попробуйте это:
grep -R 'mystring' . | cut -d: -f 1 | uniq| xargs -n 1 -I {} -t -i ksh -c "touch /tmp/$(basename {})"
Измените свое соответствие шаблону никакие пробелы выгоды прежде liste следующим образом:
/^\s*Listen/
Это будет включать все
Listen ..
Listen ...
и другие.
Просто позвольте регулярному выражению соответствовать пробелу также. Можно использовать любого группа символов [ \t]
(который соответствует пробелам или символам табуляции), или эквивалентное выражение скобки POSIX [:blank:]
.
Следовательно, /^Listen/
становится /^[[:blank:]]*Listen/
. (Обратите внимание, что выражение скобки эффективно записано с парой двойной квадратной скобки.)
s/^(\s*)Listen(.*)$/\1Listen/
(или что-то во многом как он; попробуйте его перед использованием его на чем-либо ценном). – a CVn 09.09.2013, 10:56sed -r
вместо этого выход. ссылка – rush 14.01.2015, 20:11