Your regular expression is not very good:
egrep -q '[Nn]ot\ [retrieving|Found]'
^
You are quoting the string, so why are you escaping the space?
egrep -q '[Nn]ot\ [retrieving|Found]'
^^^^^^^^^^^^^^^^
This matches any of one the characters listed, NOT the strings
"retrieving" or "Found" - for that, you would want something like:
egrep -q '[Nn]ot (retrieving|Found)'
Third, you are telling the shell "if this command (egrep -q ...) returns
a successful return code, then exit (&& exit). So, how do you know what
the reurn code is? The "-q" tells egrep to print nothing, so you would
not see any difference.
Which shell are you using? Korn shell (ksh) changed between RHEL4 and
RHEL5 from pdksh to actual Korn shell... could be that pipelines have
slightly different behavior.
Kevin
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Ian Lists
Sent: Wednesday, December 26, 2007 1:43 PM
To: [email protected]
Subject: [rhelv5-list] Regular Expressions on RHEL 5
I have a strange situation where a script that works on RHEL 4 and
Fedora 8 doesn't work with RHEL5. The piece of the script that is
failing is very simple, it's just a wget with grep.
wget -N --no-check-certificate https://myserver.net/file.txt 2>&1
>/dev/null | egrep -q '[Nn]ot\ [retrieving|Found]' && exit
It doesn't seem to care about matching the grep results on RHEL5, it
just always exits. The script should just continue on if it doesn't get
a hit on the grep statement. Anyone have any suggestions?
Thanks,
Ian
_______________________________________________
rhelv5-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/rhelv5-list
_______________________________________________
rhelv5-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/rhelv5-list