в интернетах написано, что это делается так:
/(.*)word(?!\1)/
но sed ругается или ничего не удаляет:
Код: Выделить всё
$ echo {a,b,c}{word,d,e}{a:,b:,c:}|tr ':' '\n'|sed '/\(.\)word(?!\1)/d'
печать всех вариантов
$ echo {a,b,c}{word,d,e}{a:,b:,c:}|tr ':' '\n'|sed -r '/(.)word(?!\1)/d'
sed: -e expression #1, char 15: Invalid preceding regular expression
$ echo {a,b,c}{word,d,e}{a:,b:,c:}|tr ':' '\n'|sed -r '/(.)word(!\1)/d'
печать все вариантов
/(.)word\1/!d не подходит, т.к. в строке "word" может встречаться несколько раз.