sed コマンドで特定の変数行番号にコメントを挿入するには? [コピー]

sed コマンドで特定の変数行番号にコメントを挿入するには? [コピー]

1行をコメントアウトしたい(#最初に追加)私はLinuxで次のコマンドを使用しました。sed -i '96s/^/#&/' file.txt96行目にコメントを挿入します。

行番号が変数の場合、このコマンドをどのように使用しますか?私は次のコマンドを試しました。

(1)

sed -i '${line_number}s|^|#&|' file.txt

(2)

sed -i '${line_number}s/^/#&/' file.txt

しかし、彼らは動作しません。どうすればいいですか?

答え1

変数は拡張されない一重引用符を使用する場合。代わりに二重引用符を使用してください。

 sed -i "${line_number}"'s/^/#/' file.txt

必要ありません&。これは、空の完全一致を挿入することを意味します。

関連情報