ホスティングプロバイダーのLinuxサーバー上のすべてのHTML、htm、PHP、およびtxt拡張子ファイルのテキストを検索して置き換える方法を知りたいです。SSHができます。
見つかるテキスト:http://mydomain.example.com
置き換えられるテキスト:http://otherdomain.example.com/MyDomain
正確なコマンドを教えてください。交換前に確認を求めることができれば非常に役立ちます。
sed
とfor
ループを使用する 1 つの方法を次に示します。-i
フラグを使用して、mv
上書きする前にプロンプトを表示します。
for i in *.html *.htm *.php *.txt; do sed 's%\(http://www\.\)\(MyDomain\)\(\.com\)%\1OtherDomain\3/\2%g' "$i" > tmp && mv -i tmp "$i"; done
sed -i 's/http:\/\/www.mydomain.com/http:\/\/www.otherdomain.com\/MyDomain/gi' *.txt *.html *.htm *.php