次のファイルがあります。
proto udp
resolv-retry infinite
nobind
#Single line of those bellow, I've added multiple for variations of it
remote fi.server.com 50505
remote us-cityone.server.com 5050
remote uk-citytwo.server.com 50500
remote us-citythree.server.com 56546
remote sweden.server.com 6546546
rest of config file..
明らかに、これはOpenVPN confファイルです。remote servername 5555
- で始まる行だけを変更したいと思います。サーバー名もう一つ。
remote servername 5555
例として複数行を追加しました。すべて私が変更できる変更を示しているからです。
私はちょうど中間列などを一致させ、別のfi.server.com
名前に変更したいと思いますus-newyorkcity.server.com
。sed
このパターンが機能しないのはなぜですか?
sed -i.bak 's/\w+(-|\.)\.?\w+\.?\.com/g' filename
私もこれをやったけど..
sed -i.bak 's/\w+(-|\.)\.?\w+\.?\.\w+/g' filename
また、この例では部品のみが静的であることus-newyorkcity.server.com
にserver.com
注意してください。休憩が変わりました。
助けてくれてありがとう!
ベストアンサー1
変数NEWNAME
名が挿入したい名前であると仮定すると、次のようになります。
sed -i.bak "s|^\(remote \)\([^ ]*\)\([ ]*[0-9]*\)|\1$NEWNAME\3|" filename