
一致するパターンのない行全体を行番号だけでどのように変更できますか?
sed -i "${line}p c\ "$PWD" " file.txt
答え1
奇妙な解決策:
awk '!/pattern/{$0=NR}; 1' file.txt > outfile.txt
答え2
GNUがある場合は、sed
コマンドを使用して現在の行にアクセスし、次=
のことを実行できます。
sed -i '/pattern/!{=;d;}' file.txt
(現在行番号を挿入した後に行が一致しない場合は、行を削除します。模様)。
答え3
別の方法は、sedまたはawkがインストールされていない場合です。
i=1; while read LINE; do echo $i; ((i++)); done < file.txt > outfile.txt