2016-11-01 9 views
0

awkをコンマ区切りの出力に解析したいファイルパスのセットにパイプしていますが、何らかの理由で最初の行が無視されています。私は何が間違っているのか分かりません。awkがファイルの最初の行を解析していません

ファイルパスの例では、それは

/home/user/folder1 
/home/user/folder2 
/home/user/folder3 
/home/user/folder4 
/home/user/folder5 

awkコマンドが...

awk ' BEGIN { FS="/" } { print $1,$2,$3,$4 } { OFS="," } ' test 

あるしかし、私の出力がこれです...

home user folder1 
,home,user,folder2 
,home,user,folder3 
,home,user,folder4 
,home,user,folder5 

...テストファイルであります最初の行を無視しているようだ...私も(NR> 0)印刷しようとしたが、それも動作しませんでした。

+0

あなたはそれが最初の行を無視していると思うのはなぜ?それは出力のすぐそこです。 – melpomene

+0

最初の行はコンマで区切られていないので、awkコマンドが適用されていないという意味で無視されます。 – antimuon

答えて

1

私は間違ったことを見ます。 OFSは、声明が実行された後に適用されていた。変更

...

awk ' BEGIN { FS="/"; OFS="," } { print $1,$2,$3,$4 } ' test 


,home,user,folder1 
,home,user,folder2 
,home,user,folder3 
,home,user,folder4 
,home,user,folder5 
関連する問題