F
複数行のテキストを含むテキストファイルと、その行に対応する数値リストをL
含む別のテキストファイルがありますが、F
リスト内のすべての行をL
削除したいと思います。F
次の例では:
cat F.txt
aaa
bbb
ccc
cat L.txt
1
3
1
行を削除し、行2を3
残してF.txt
新しいファイルに保存するコマンドが必要ですF_new.txt
。
cat F_new.txt
bbb
ベストアンサー1
awk
最初のファイルの行番号をNR==FNR
配列としてロードし、その行の配列要素が存在しないp[]
2番目のファイルから印刷するだけです。NR!=FNR
!p[FNR]
awk 'NR==FNR{p[$1]=$1}
NR!=FNR&&!p[FNR]' L.txt F.txt > F_New.txt
bbb