こんにちは私は2つの入力ファイルを持っています。
input1.txt:
id above
id below
id still
id getting
input2.txt
id above
value above the sky
id below
value under the chair
awkコマンドを実行しようとすると、空で表示されます。
awk -f find.awk input1.txt input2.txt
2つの異なるtxtファイルを入力すると、すべての出力が正しく表示されるため、awkが機能することがわかります。
異なるinput2.txtファイルの違いは...
Windowsマシンでメモ帳を使用すると、ファイル全体が1つの文字列になりますが、txtエディターを使用すると、別々の行でフォーマットされます。
メモ帳のinput2.txtの例。
id above value above the sky id below value under the chair
私の実際のtxtファイルにはより多くのデータが含まれているため、この入力をidで再解析することはできません...これは一貫性がないため、文字列またはreg式を検索することはできません。
find.awk
FNR==NR { id[$0]; next }
$0 in id { f=1 }
f
NF==0 { f=0 }
そして、なぜ私のawkが機能しないのかについての考えは?