শুধুমাত্র awk
আদেশ সহ:
awk -F, '{getline f1 <"file2" ;print f1,$3,$4}' OFS=, file1
ফাইল 1 থেকে একটি লাইন পান এবং এটি স্থানীয় ভেরিয়েবলের মধ্যে সঞ্চয় করুন f1
, তারপরে লাইনটি মুদ্রণ করুন f1
এবং শেষ পর্যন্ত ফাইল 1 থেকে তৃতীয় ( $3
) এবং এগিয়ে ( $3
) ক্ষেত্রগুলি মুদ্রণ করুন যা ,
সম্পূর্ণরূপে কমা দিয়ে বিস্মৃত হয়েছিল এবং অফসটি পরিবর্তন করে (আউটপুট ফিল্ড বিভাজক [স্থান দ্বারা স্থান) ডিফল্ট]) থেকে কমা ( ,
)।
শর্ট কমান্ডটি এরকম হবে:
paste -d, file2 <(cut -d, -f3- file1)
এ বি সি ডি
এ বি সি ডি
এ বি সি ডি
এ বি সি ডি
ফাইল 2 টি পেস্ট করুন, তারপরে -f3-
ফাইল 1 থেকে তৃতীয় কলামটি পরবর্তী ( ) এ পেস্ট করুন ।
সহ awk
এবং paste
(বিকল্প এ)
কমান্ডের নীচে C,D
ফাইল 2 এ প্রতিটি লাইনের শেষে ফাইল 1 থেকে শেষ দুটি কলাম ( ) অনুলিপি করা হয়েছে:
paste -d',' file2 <(awk -F',' '{print $(NF-1)","$NF}' file1)
কমান্ড উপরে পেস্ট file2 বিষয়বস্তু তারপর একটি কমা বিভেদক (মুদ্রণ -d','
) তারপর দুই গত ক্ষেত্র পেস্ট ( NF
গত ক্ষেত্রের সূচক এবং $NF
স্ট্রিং যা তার সূচক হল NF
। সুতরাং $(NF-1)
গত ক্ষেত্র সামনে দ্বিতীয় ক্ষেত্র) file1 থেকে যখন সেই সূচক redefines বা কমা দর্শকের সাথে বিভক্ত ( -F','
)।
সহ awk
এবং paste
(বিকল্প বি)
এই কমান্ডটিও উপরের মত ( $3
এবং $4
ফাইল 1 থেকে প্রতিটি লাইনের তৃতীয় এবং সামনের ক্ষেত্রের দিকে নির্দেশ করে):
paste -d',' file2 <(awk -F',' '{print $3","$4}' file1)
অথবা cut
কমান্ড সহ আরও একটি সমাধান :
paste -d, <(cut -d, -f1 file1) <(cut -d, -f2 file2) <(cut -d, -f3- file1)
কাটা উপরোক্ত কমান্ডে কমান্ড প্রথম প্রথম ক্ষেত্র (কাটা -f1
যা কমা বিভেদক (সঙ্গে সূচীবদ্ধ -d.
file1 (থেকে)) cut -d, -f1 file1
), তারপর কেটে file2 (দ্বিতীয় ক্ষেত্র পেস্ট cut -d, -f2 file2
) এবং পরিশেষে কেটে তৃতীয় কলাম (পেস্ট -f3
) nexts করার জন্য ( -
) ফাইল 1 ( cut -d, -f3- file1
) থেকে আবার।
এই কমান্ড একই ফলাফল প্রদান করে:
paste -d, <(awk -F',' '{print $1}' file1) <(awk -F',' '{print $2}' file2) <(awk -F',' '{print $3","$4}' file1)
ফাইল 1 ( awk -F',' '{print $1}' file1
) থেকে দ্বিতীয় ক্ষেত্রটি পেস্ট করুন তারপরে কমা মুদ্রণ করুন ( -d,
), তারপরে ফাইল 2 ( ) থেকে দ্বিতীয় কলামটি awk -F',' '{print $2}' file2
পেস্ট করুন, শেষ পর্যন্ত ফাইল 1 ( awk -F',' '{print $3","$4}' file1
) এর দ্বিতীয় এবং শেষ কলামটি আবার পেস্ট করুন ।