0

のこの行をコメントアウトしたい/etc/hosts:

127.0.0.1 test test 

なる:

#127.0.0.1 test test 

127で始まる行を見つけるためにこれを行うには、bashコマンドラインのワンライナーにどのようにしますか? Ubuntu 12.04 を使用しています。

ありがとう

4

3 に答える 3

3

sed(1)を使用できます:

sed -i '/^127/s/^/#/' /etc/hosts

-iはその場で置換を行うことを意味するため、置換/etc/hostsは標準の stdout ではなく で行われます。

'/^127/s/^/#/''/^127/'127 で始まる行を検索することを意味します (^行アンカーの開始)、s/^/#/その行の開始を . に置き換え#ます。

于 2013-10-31T07:36:55.350 に答える
2

使ってみてsed

sed -i.bak 's/^127/#&/' /etc/hosts

-i.bak- その場でバックアップファイルを.bakに置き換えて作成します

于 2013-10-31T07:47:42.520 に答える
2

次のコマンドでこれを行うことができると思います:

sed -i 's/127.0.0.1 test test/#127.0.0.1 test test/g' /etc/hosts
于 2013-10-31T07:37:06.883 に答える