私はこのコードを持っています
[motaro@Cyrax ]$ awk '{print $1}' awk1.txt awk2.txt
line1a
line2a
file1a
file2a
両方のファイルのccolumnsが表示されます
$1(of file 1)
どうすれば、$1(of file2)
別々に見つけることができますか
上記のコメントのように、3つ以上のファイルの場合、次のような条件を設定します。
FILENAME == ARGV[1]
例えば:
awk 'FILENAME == ARGV[1] { print $1 } FILENAME == ARGV[2] { print $1 } FILENAME == ARGV[3] { print $1 }' file1.txt file2.txt file3.txt
または、ファイルのグロブがある場合:
条件を次のように変更します。
FILENAME == "file1.txt"
例えば:
awk 'FILENAME == "file1.txt" { print $1 } FILENAME == "file2.txt" { print $1 } FILENAME == "file3.txt" { print $1 }' *.txt
また、変数ARGCおよびARGVについて詳しく読むこともできます。さらに説明が必要な場合はお知らせください。乾杯。
awk 'NR==FNR{a[FNR]=$0;next} {print a[FNR],$0}' file_1 file_2
ここで見つかりました
何が必要か正確にはわかりません。おそらく、事前定義された変数が必要です:FILENAME
awk '{print $1,FILENAME}' awk1.txt awk2.txt
上記のコマンドは次のように出力します。
line1a awk1.txt
line2a awk1.txt
file1a awk2.txt
file2a awk2.txt