ファイル1:
19a9s
c9019
5777
ファイル2:
99a9s
89019
10919
期待される出力
19a9s
89019
5777
だからそれは letter で始まりますfile 1
。行が文字で始まる場合を条件として使用したいので、2番目のファイルで置き換えたいと思います。line#2
c
c
file 2
以下を試しましたが、期待した結果が得られませんでした。
awk '
NR == FNR{ #for lines in first file
S[NR] = $0 #put line in array `S` with row number as index
next #starts script from the beginning
}
/^c/{$0=S[FNR]}{ #for line stared with `c`
$0=S[++count] #replace line by corresponded array element
}
1 #alias for `print $0`
' file2 file1
答え1
awk '
NR == FNR{ #for lines in first file
S[NR] = $0 #put line in array `S` with row number as index
next #starts script from the beginning
}
/^c/{$0=S[FNR]}{ #for line stared with `c`
}
1 #alias for `print $0`
' file2 file1
答え2
どのくらい行くのでしょうか?
paste file[12] | sed 's/^c[^ ]* //; t; s/ .*$//;'
19a9s
89019
5777
わかりますか?