0

我正在尝试运行一个脚本来替换很多 .php 文件中的一段代码。我需要更换:

`popupOpen(\'/home/open.php?c='.urlencode($row['id']).'&s=\', 650, 600)` 

有了这个:

`popupOpen(\'/home/open.php?c='.urlencode($row['id']).'&s=\', 1024, 750)`

我正在使用的命令是:

find . -name "index.php" -print | xargs sed -i "s/popupOpen(\\\'\/home\/open.php?c='.urlencode\($row\['id']\).'\&s=\\\', 650, 600)/popupOpen(\\\'\/home\/open.php?c='.urlencode\($row\['id']\).'\&s=\\\', 1024, 750)/g"

我似乎无法正确逃避它。我错过了什么?

4

1 回答 1

0

你可以没有xargs

find .name "index.php" -exec sed -i '' sed "whatever" {} \;

在这种情况下,我认为这会起作用:

find . -name "index.php" -exec sed "s|popupOpen(\\\\'/home/open\.php\?c=\'\.urlencode(\\\$row\[\'id\'\])\.\'&s=\\\\', 650, 600)|popupOpen(\\\\'/home/open\.php\?c=\'\.urlencode(\\\$row\[\'id\'\])\.\'\&s=\\\\', 1024, 750)|g" {} \;
于 2013-04-13T05:39:11.820 回答