Unix - ファイル内のすべての行にテキストを追加する方法(ヘッダー行/最初の行を除く)

Unix - ファイル内のすべての行にテキストを追加する方法(ヘッダー行/最初の行を除く)

次のデータを含むabc.txtファイルがあります(実際のデータには約200個のレコードがたくさんあります)。

目名前
1 |
品質
3 |

今、私のファイルが次のように見えるようにテキストを追加するにはどうすればよいですか?

スノー|名前|場所
1|ジャック|パリ
2|質|パリ
3|6月|パリ

グローバル置換を試みましたが、最初の行に別のテキストを追加する必要があります。だから私を助けてください。

ベストアンサー1

これには3つのオプションがあります。

  • awkとその変形(gawkなどmawk):

    awk '{if(NR==1){print $0,"| Place"} else{print $0,"| Paris"}}' file.txt
    
  • 真珠:

    perl -lne '$.==1 ? print "$_ | Place" : print "$_ | Paris"' file.txt
    
  • sed

    sed '1 s/$/ | Place/; 1! s/$/ | Paris/' file.txt 
    

おすすめ記事