0

次のようなリストがあります。

server
server.apple.com
server.apple.com
server
server.apple.com

ここで、「server」とだけ書かれている行に「.apple.com」を追加したいと思います。私はsedを試しました:

sed -e 's/\bserver\b/server.apple.com/g'
4

2 に答える 2

2

あなたが使用することができます:

sed 's/^server$/server.apple.com/g'

^は行頭、行末を$意味します。

-eこれは単なる基本的な正規表現であるため、引数も必要ありません。

大文字と小文字を区別しない検索(とserverも一致) が必要な場合は、関数を使用できますが、さまざまなバージョンの ではサポートされていません。SERVERSErvErIsed

sed 's/^server$/server.apple.com/Ig'

sedサポートするバージョンがない場合は、I次を使用できます。

sed 's/^[Ss][Ee][Rr][Vv][Ee][Rr]$/server.apple.com/g'
于 2012-05-10T08:47:45.223 に答える
2
sed 's/^server$/server.apple.com/g' inputfile

^は行$の開始と終了を意味するため、追加のテキストがない行のみに一致します。

于 2012-05-10T08:47:47.097 に答える