WordPressデータベース用のSQLファイルがあります。別のドキュメントルートを使用している別のサーバーに移動しようとしています。
前のドキュメントのルートは次のとおりです。/home/saeid/public_html
新しい文書のルートは次のとおりです。 /home/saeid/www/domain.com/html
前のパスのすべてのエントリを新しいパスに置き換えたいです。
fooをbarに置き換える例を見たことがありますが... "/"文字を含むパスを変更したいので...正常に動作するかどうかはわかりません。sed -i -e 's/foo/bar/g' filename
答え1
別の区切り記号を使用してください。
sed -i 's|foo|bar|g' filename
したがって、あなたの場合は次のようになります。
sed -i 's|/home/saeid/public_html|/home/saeid/www/domain.com/html|g' file
これはinfo sed
:
s(交換)コマンドの構文は「s/regexp/replacement/flags」です。 /文字は、与えられたsコマンドで他の単一文字に均一に置き換えることができます。数値(または代わりに別の文字を使用してください)前に\文字がある場合にのみ、正規表現または置換に現れることがあります。