オリジナル:
yes
no
approved
declined
2番目の段落
1111 1
333 4
1
4
元のテキストで置き換えたい行番号です。
出力:
1111
no
approved
333
この問題を処理する方法
ベストアンサー1
短いアッ方法:
awk 'NR==FNR{ a[$2]=$1; next }FNR in a{ $0=a[FNR] }1' file2 file1
a[$2]=$1
- 2番目のフィールド値を配列インデックスとして$1
使用して最初のフィールド値をキャプチャする(最初の入力ファイルを処理するとき)$2
a
file2
$0=a[FNR]
- 行全体を現在のレコード番号の値に置き換えますFNR
(処理中file1
)。
出力:
1111
no
approved
333