Bashスクリプトを使用してファイルを編集する最良の方法は何ですか?

Bashスクリプトを使用してファイルを編集する最良の方法は何ですか?

RHEL 5.8で/bin/bashを使用してファイルを自動的に編集したいと思います。ファイルを検索してファイルの1行を置き換えるには、スクリプトが必要です。ライン例:

Other line
Current date 01121990
Other line

この行を検索し、日付文字列をスケジュールされた日付に置き換えます。ファイルはサーバー固有のファイルからコピーされるため、新しいファイルにエコーを表示したり日付を入力したりすることはできません。ありがとうございます!

ベストアンサー1

your_date='your desired date'
sed -i "s/^Current date.*/Current date ${your_date}/" /path/to/file

これが最も簡単な方法です。これは、置き換えられる日付を含むすべての行が「現在の日付」で始まる唯一の行でもあると仮定します。

このコマンドを実行するユーザーレベルには、ファイルを編集する権限も必要です。

-i はインライン編集を意味します。つまり、ファイルを直接編集するという意味です。

^Current date.*

次に始まるすべての行を意味します。現在の日付 そして何とか終わります。つまり、行全体をsedの2番目の/.../セクションの内容に置き換えます。

sedステートメントの周りにDouble "を使用して、変数が文字列ではなく変数として使用されるようにします。

おすすめ記事