こんにちは。 users.txtというファイルがあります。たとえば、このファイルにはユーザーのリストがあります。
user1
user2
user3
「owner = user」という特定の文字列を持つ別の「search」というファイルがあります。
owner = user1
random text
random text
owner = user15
random text
random text
owner = user2
したがって、ユーザーファイルに基づいてすべてのユーザーを見つけ、これらのユーザーの名前を次のように変更できますか?[Eメール保護]?例えば
owner = [email protected]
random text
random text
owner = user15
random text
random text
owner = [email protected]
ackコマンドとcatコマンドを使用していくつかの操作を行いましたが、プログラミングが初めてなので正しい出力が得られませんでした。私の考えは次のとおりですが、実際に必要なことはしません。どんな助けでも大変感謝します。
cat users | xargs -i sed 's/{}/moo/' searches
ベストアンサー1
awkを試してみてください:
awk 'NR == FNR {SRCH[$1]; next} $NF in SRCH {$NF = $NF "@domain.com"} 1' users searches
owner = [email protected]
random text
random text
owner = user15
random text
random text
owner = [email protected]
users
ユーザーがファイルでその内容を見つけたら、付録を追加します。