1

内容が以下のコンマ区切りのフラットファイルがあります。

Name,Empno,Address,Contact,Company
A,1,”BTM, Bangalore”,1234,”HCL”
B,2,”Tatanagar”,1243,”WIPRO”
C,3,”Patna”,1254,”CTS”
D,4,”Doranda,Ranchi”,1253,”TCS”

全員の名前と連絡先のみを取得する必要があります。区切り文字を「」として使用すると、AとDの連絡先はバンガロールとランチになりますが、これは正しくありません。1番目と4番目のフィールドを取得するにはどうすればよいですか。また、awkコマンドを使用して必要な詳細を取得できるかどうかをお知らせください。

編集 これを追加するだけでサンプルデータになります。元のデータにはさらにいくつかのフィールドがあり、引用符で囲まれた任意のフィールドにコンマを含めることもできます。

4

2 に答える 2

1

連絡先は常に最後ですが、1つのフィールドだと思います。あなたはこれを試すことができます

awk -F, '{if(NR>1)printf("%s,%s\n",$1,$(NF-1));}' ip.txt
于 2012-05-16T09:20:57.110 に答える
1
$ awk -F, '{print $1, $(NF-1)}' csv.txt 
Name Contact
A 1234
B 1243
C 1254
D 1253
于 2012-05-16T09:31:14.407 に答える