LINUX.ORG.RU

заменить sed + grep на sed only

 ,


0

1

Привет!
Не могу разобраться, как следующее сделать только при помощи сед:

diff list-*|grep '<'|sed -e 's/<//'

Т.е., вывести только строки, в которых есть <, и удалить <.

Думал так:

diff list-* | sed -e '/</s/<//'

но выводятся в таком случае все строки.

Подскажите, пожалуйста.

★★★★★

Последнее исправление: takino (всего исправлений: 2)

sed -ne 's/<//gp'
-n: по-умолчанию не печатать
s/<//gp - заменить все (g) вхождения «<» на «» и вывести результат, если замена произошла (p).

AITap ★★★★★
()
Ответ на: комментарий от anonymous

Тьфу, точно же, не подумал.

ТС, правильнее будет: sed -ne 's/^<//p' (искать совпадения только в начале строки).

AITap ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.