bashで特定の文字列群を置換する方法
Q&A
Closed
解決したいこと
target.txt
のような空白で区切られたファイルがあったとして、一番左側の文字列だけをchange.txt
の内容で置き換えたいです。二つのテキストの順番は一致しており、丸ごと置き換えることができれば良いです。何か方法はあるでしょうか?
これをやりたい背景として、解析計算を行なってtarget.txt
を作成したのですが、左側の部分だけ古い情報であることが発覚しました。そのため、新しい内容であるchange.txtで置き換えたいと言うのが背景です。
- 環境(Fedora version36)
target.txt
1.Australia/ACT3126/2022 303 143 0.0573
2.Australia/ACT3126/2022 302 113 0.0573
3.Australia/ACT3126/2022 301 133 0.0573
4.Australia/ACT3126/2022 300 143 0.0573
...(20万行程度)
change.txt
1.Australia/ACT3126/2022
2.Australia/ACT3248/2022
3.Australia/ACT4235/2022
Australia/ACT3126/2022
...(20万行程度)
自分で試したこと
pythonで二つのファイルを配列として読み込んで、置き換えるということはできます。ただ、シェルで出来れば早そうだし楽だと考えたので、方法が知りたいです。難しいもしくはないという回答でも大丈夫です。
0