Re: regexp: anything but |
On Wed, Dec 09, 2009 at 07:07:52PM +0000, Chris Jackson wrote:
Note that from the shell this is in single quote marks to stop shell
expansions. Doing it without those would be masochism ;)
It already is:
lee@yun:~/tmp/chan$ cat channels.dvb | sed '/^[^|]*|[^|]*-[0-9]|/' | wc -l
sed: -e Ausdruck #1, Zeichen 21: Fehlender Befehl
(which means: "expression #1, character 21: missing command" --- and
it matches every line)
But the idea behind your version is interesting :)
Well, you need to give it a command, I just gave you the regex. And the
default in sed is to print every line. Try:
sed -n '/^[^|]*|[^|]*-[0-9]|/ p'
Where -n means don't print every line (technically it prints the
"pattern space" at the end of processing each line), and p is the
command meaning print - i. e. print those that match.