批量替换备案号命令大全_Linux sed与MySQL REPLACE
很多站长做批量替换备案号直接全量替换,结果把不该改的内容也改了,又没有备份,只能从主机商备份恢复,耗时几小时。正确做法是先 grep 搜索确认匹配范围,备份后小范围测试,再全量执行,执行后抽查验证。
Linux 批量替换文件内容用 sed:sed -i "s/旧文字/新文字/g" 文件名。批量替换当前目录下所有 html 文件:find . -name "*.html" -exec sed -i "s/旧文字/新文字/g" {} ;。替换域名时点号要转义:sed -i "s/old.com/new.com/g"。-i 参数直接修改文件,执行前先备份。
参考(Linux sed 批量替换): ``` # 单文件替换 sed -i "s/旧文字/新文字/g" index.html # 批量替换当前目录所有 html find . -name "*.html" -exec sed -i "s/旧文字/新文字/g" {} ; # 替换域名(点号转义) find . -name "*.php" -exec sed -i "s/old.com/new.com/g" {} ; # 替换前先预览匹配 grep -r "旧文字" . --include="*.html" -l ```
特殊字符替换要转义。sed 里的 / & . * + ? [ ] ( ) 都要加反斜杠转义,或用不同的分隔符(sed "s|旧文字|新文字|g" 用 | 分隔,避免转义 /)。SQL 里的单引号用两个单引号转义,反斜杠用两个反斜杠。转义错误会导致替换失败或匹配错误。
替换域名时还要改配套配置。WordPress 改 wp-config.php 里的 WP_HOME 和 WP_SITEURL,.htaccess 里的 RewriteRule 域名,数据库里的 siteurl/home/guid/post_content。只改数据库不改配置文件会导致重定向循环。改完用 du -sh 查看确认所有页面正常跳转。

更新时间:2026-08-26 21:01:28
上一篇:虚拟主机FTP密码和数据库密码设置成一样安全吗?_密码复用风险与建议_配置设置教程