САС переименовывает с неизвестным количеством символов перед " - PullRequest
0 голосов
/ 15 октября 2011

У меня есть file1, в котором есть некоторый код PHP.Мне нужно найти следующее: action="blahblah" и заменить его на action="error.php".Проблема в том, что я не знаю, сколько символов в кавычках в оригинале.

Вот что у меня не работает:

sed 's:action="^[^"]*":action="error.php":' <file1> file2

Как мне это сделать?

1 Ответ

2 голосов
/ 15 октября 2011

Почему у вас есть маркер начала строки ^ перед классом символов?Попробуйте:

sed 's:action="[^"]*":action="error.php":' <file1 > file2

Вот расшифровка стенограммы, показывающая вашу версию вместе с этим исправлением:

pax$ echo 'blah action="something" blah' | sed '
...$    s:action="^[^"]*":action="error.php":'
blah action="something" blah

pax$ echo 'blah action="something" blah' | sed '
...$    s:action="[^"]*":action="error.php":'
blah action="error.php" blah
...