1. ホーム
  2. bash

[解決済み] テキストファイルの行全体を行番号で置換する方法

2022-04-20 14:27:43

質問

あるファイルの行全体をbashスクリプトで置き換えたい状況があります。 行番号は常に同じなので、ハードコードされた変数にすることができます。

その行の一部の文字列を置き換えるのではなく、その行を完全に新しい行に置き換えたいのです。

これを行うためのbashメソッドはありますか(または.shスクリプトに投げ込むことができる何か簡単なもの)。

どのように解決するのですか?

最高ではありませんが、これでうまくいくはずです。

sed -i 'Ns/.*/replacement-line/' file.txt

ここで N は、目的の行番号に置き換えてください。これで元のファイルの行が置き換わります。変更したテキストを別のファイルに保存する場合は -i オプションを使用します。

sed 'Ns/.*/replacement-line/' file.txt > new_file.txt