2010-01-02 48 views
0

我有几个PHP文件,并有那些对.html文件的引用。搜索多个php文件,并替换文本?

我需要更换名 “.html” 改为 “.PHP”

我怎样才能在bash做到这一点?

+2

你可能想仔细检查这个结果。例如,您不希望将另一个* .html文件的外部链接重新命名为PHP。 – 2010-01-02 02:43:36

回答

2
for file in $(find . -name "*.php"); do 
    sed "s/\.html/.php/g" $file > $$ && mv $$ $file 
done 
+0

'sed --in-place' – 2010-01-02 03:51:39

0

尝试SED:

find -name "filenamepattern.php" -print0 | xargs -0 sed 's/\.html/\.php/g' 
+0

论坛正在吃斜线。只需在每个时期添加一个。 – Codism 2010-01-02 02:42:36

1
find -name '*.php' -exec sed -ie 's:.html:.php:g' {} \; 
0

GNU找到

find /path -type f -iname '*.php' -exec sed -i.bak 's/\.html/\.php/g' {} +;