|
From: | GNU bug Tracking System |
Subject: | [debbugs-tracker] bug#18377: closed (piping output through egrep -- escaping of "+" only needed sometimes. Why?) |
Date: | Mon, 01 Sep 2014 08:07:02 +0000 |
Your message dated Mon, 01 Sep 2014 01:05:51 -0700 with message-id <address@hidden> and subject line Re: bug#18377: piping output through egrep -- escaping of "+" only needed sometimes. Why? has caused the debbugs.gnu.org bug report #18377, regarding piping output through egrep -- escaping of "+" only needed sometimes. Why? to be marked as done. (If you believe you have received this mail in error, please contact address@hidden) -- 18377: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18377 GNU Bug Tracking System Contact address@hidden with problems
--- Begin Message ---Subject: piping output through egrep -- escaping of "+" only needed sometimes. Why? Date: Sun, 31 Aug 2014 19:07:48 -0700 Hi all, I'm trying to pipe of output of a command through egrep. If I do this ldconfig -p | egrep "libstdc++" libstdc++.so.6 (libc6,x86-64) => /usr/lib64/libstdc++.so.6 libstdc++.so.6 (libc6) => /usr/lib/libstdc++.so.6 that *IS* the answer I expect. But if I simply add a ".so" to the egrep target, it returns nothing ldconfig -p | egrep "libstdc++.so" (empty) If I *escape* the two "+", it works again. ldconfig -p | egrep "libstdc\+\+.so" libstdc++.so.6 (libc6,x86-64) => /usr/lib64/libstdc++.so.6 libstdc++.so.6 (libc6) => /usr/lib/libstdc++.so.6 Why do I need to escape the "+" in the last case, but not in the first? Terry
--- End Message ---
--- Begin Message ---Subject: Re: bug#18377: piping output through egrep -- escaping of "+" only needed sometimes. Why? Date: Mon, 01 Sep 2014 01:05:51 -0700 User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 address@hidden wrote:Why do I need to escape the "+" in the last case, but not in the first?Because "+" is a special character to egrep. The pattern "libstdc++" is equivalent to the pattern "libstdcc*" which matches in the first case, whereas the pattern "libstdc++.so" is equivalent to the pattern "libstdcc*.so" which does not match in the last case.
--- End Message ---
[Prev in Thread] | Current Thread | [Next in Thread] |