我正在重组我的网站并且必须重新安排文件中的引用。有一个目录包含许多子目录和 php 文件。我正在寻找某种命令/脚本,该命令/脚本可以搜索该目录中的每个文件以获取此模式并将其替换为自定义模式。
例如:我想用 /shopping/shop/ipad
替换 one/two/three/
的确切出现。换句话说,如果任何文件包含一些字符串,例如:
location:index.php?p=one/two/three/abcdefg&aid
那么应该换成
location:index.php?p=/shopping/shop/ipad/abcdefg&aid
请注意,内容替换应该发生在每个文件中,在主目录中的每个目录 /
子目录中(假设主目录名称是 abc
和所有子目录& 文件在 abc
内)。目录名称本身不应更改。我怎样才能做到这一点?我的服务器运行 linux,我有 root 和 shell 访问权限。
最佳答案
find . -type f|xargs perl -pi -e 's/one\/two\/three/shopping\/shop\/ipad/g'
经过测试,工作正常。如果有 o,它也不会替换
只有一个
你也可以找到它here
关于linux - 如何在目录和子目录中的所有文件中用另一个字符串模式替换字符串模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14076611/