1

このファイルを考えると

$ cat foo.txt
,,,,dog,,,,,111,,,,222,,,333,,,444,,,
,,,,cat,,,,,555,,,,666,,,777,,,888,,,
,,,,mouse,,,,,999,,,,122,,,133,,,144,,,

最初のフィールドを次のように印刷できます

$ awk -F, '{print $5}' foo.txt
dog
cat
mouse

ただし、このように呼び出すことができるように、これらの空のフィールドを無視したいと思います

$ awk -F, '{print $1}' foo.txt
4

5 に答える 5

4

次のように使用できます。

$ awk -F',+' '{print $2}' file
dog
cat
mouse

同様に、$3、$4、$5 などを使用できます。この場合、レコードが区切り文字で始まるため、$1 は使用できません。

于 2013-04-18T08:26:29.577 に答える
1
$ awk '{print $1}' FPAT=[^,]+ foo.txt
dog
cat
mouse
于 2013-04-19T02:45:31.497 に答える
0

次のコマンドを使用して、フィールドの複数の繰り返しを削除できますtr -s 'field'

$ tr -s ',' < your_file
,dog,111,222,333,444,
,cat,555,666,777,888,
,mouse,999,122,133,144,

そして、次の方法dogで などにアクセスできます。

$ tr -s ',' < your_file | awk -F, '{print $2}'
dog
cat
mouse
于 2013-04-18T08:51:32.320 に答える