いくつかのawkスクリプトが必要なタスクがあります。
ファイルがあるとしましょう。
A,under1
,under2
,under3
,under4
,under5
B,new1
,new2
,new3
C,sm1
,sm2
どのようにawkを使用して次のように作成できますか?
A,under1
A,under2
A,under3
A,under4
A,under5
B,new1
B,new2
B,new3
C,sm1
C,sm2
つまり、列に沿って最初のフィールドを拡張したいと思います。
ベストアンサー1
一方通行:
$ awk -F, '!$1{$1=p;}$1{p=$1;}1' OFS=, file
$1{p=$1;}
$ 1に値がある場合は変数pに保存します。
!$1
$1が空であることを意味します。 $ 1が空の場合は、$ 1を最後の$ 1の値を含むpに設定します。
1
各行を印刷します。