2013-09-08 7 views
0

Я пытаюсь заменить строку $PHP_SELF на $_SERVER['PHP_SELF'] всего php файлов. Я выполнил эту команду, но просто удалил строку и ничего не заменил:Проблема с SED (linux) с рекурсивным

cd /home/rg/public_html && find . -type f -print0 | xargs -0 perl -i.php -pe "s/\\\$PHP_SELF/\$_SERVER['PHP_SELF']/g" 

Любые идеи?

ответ

0

Просто используйте гну sed/grep/xargs, такие как:

$ cd /home/rg/publick_html 
$ find . | grep "[.]php$" | xargs sed -e 's/\$PHP_SELF/\$_SERVER\['PHP_SELF'\]/g' -i 

также:

find . -type f -name "*.php" | xargs sed -e 's/\$PHP_SELF/\$_SERVER\['PHP_SELF'\]/g' -i 

благодаря @Utopik

удачи ~

+0

Он отлично работает! благодаря! :-) – user2670167

+0

: D, рад слышать! – atupal

+1

'найти. -type f -name "* .php" | xargs [...] 'лучше – Utopik

Смежные вопросы