gpt4 book ai didi

unix - 从Unix终端搜索并替换多个文件上的字符串

转载 作者:行者123 更新时间:2023-12-03 12:26:21 24 4
gpt4 key购买 nike

我们正在将代码库中的所有静态html页面转换为php页面。第一步是将所有.html文件扩展名更改为.php(我已经这样做了)。第二步是更新每个html页面中的所有链接,以指向新的php页面。

(例如,在index.php中,我同时具有contact.html和about-us.html的链接。由于我们已将每个.html文件扩展名替换为.php,因此我们需要将contact.html更改为contact.php,并且同样,about-us.html至about-us.php)。

我现在要做的是在多个文件中搜索特定的字符串。 (在许多文件(例如index.php,index2.php,index3.php等)中搜索“contact.html”。)之后,将所有这些文件中的所有“contact.html”替换为“contact.php” ”。

我不熟悉unix命令行,到目前为止,我在论坛上已经看到其他人的类似问题,但还不太了解哪个可以帮助我实现我想要的目标。我正在使用cygwin,如果可能,我需要在没有perl脚本的情况下解决此问题,因为我没有安装它。我需要尝试使用sed,grep,find或其他任何方式。

因此,如果您认为这是重复的内容,请指向我的相关帖子。谢谢你的时间。

最佳答案

尝试这个:
find . -name '*.html' -exec sed -i 's/\.html/\.php/g' "{}" \;
它将在当前目录和子目录中找到所有以.html结尾的文件,并在每个文件中运行sed,以便在其中出现的任何位置用.html替换.php

有关更多详细信息,请参见http://content.hccfl.edu/pollock/unix/findcmd.htm

关于unix - 从Unix终端搜索并替换多个文件上的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7536009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com