ファイルの先頭に文字列を入れて+ 3桁の増分値

ファイルの先頭に文字列を入れて+ 3桁の増分値

ファイルの先頭に文字列+ 3桁の増分値を配置したいと思います。

このように、

ABC
DEF
GHI
...

到着

string001 ABC
string002 DEF
string003 GHI
...........

その他など

ありがとうございます。

答え1

perl -n -i -e 'printf "string%03d %s", $., $_' file

file inビットを編集してstring行番号の前に追加します($.0。パディング幅は1行あたりの3スペースを追加します。

GNUと同じawk

gawk -i /usr/share/awk/inplace.awk '{printf "string%03d %s", NR, $0 RT}' file

どちらも一度に複数のファイルを編集できますが、各ファイル間の数値プレフィックスをリセットするには、コードに追加して置き換える必要があります;close ARGV if eofperlNRFNRgawk

存在するgawk使用しないでください-i inplace現在の作業ディレクトリから最初に拡張機能をgawkロードしようとすると、誰かがそのディレクトリにマルウェアを植えた可能性があります。システムに付属の拡張プログラムのパスは異なる場合があります。出力を参照してください。inplaceinplaceinplace.awkinplacegawkgawk 'BEGIN{print ENVIRON["AWKPATH"]}'

答え2

cat -n my_file | sed 's/^/string/g' | tr -s " "

関連情報