私の/etc/hostsは次のようになります
1.2.3.4 abc.xyz.com # comment section
2.3.4.5 bcd.xyz.com # comment section
2.3.4.6 cde.xyz.com # comment section
ホスト名はユーザー入力になります。 /etc/hostsを読み、このエントリが存在することを確認し、ユーザーが提供した新しいホストと交換した場合は、新しいホストとホスト名のIPを交換したいと思います。編集後にコメントを保持するには。
「test.sh - abc.xyz.comの置き換え - qwe.xyz.comを使用する」と同じです。
出力:
5.6.7.8 qwe.xyz.com #comment section
ベストアンサー1
シンプルsed
置換:
sed -Ei 's/^([0-9]+\.){3}[0-9]+ abc\.xyz\.com/5.6.7.8 qwe.xyz.com/' /etc/hosts
最終/etc/hosts
コンテンツ:
5.6.7.8 qwe.xyz.com # comment section
2.3.4.5 bcd.xyz.com # comment section
2.3.4.6 cde.xyz.com # comment section