grep -q Portability

I don't think I've sent this one to the list yet.

The nc -q autodetection code fails if the target system's grep does not
have a -q argument (quite the ironic coincidence). I believe -q is
specified by POSIX, but Solaris 11's /bin/grep does not support -q.
Redirecting to /dev/null works portably. (In fact, this is even
recommended in favor of -q for portability by GNU grep's man page.)

This needs to be changed in virt-manager's src/virtManager/console.py.

Richard
This commit is contained in:
Richard Laager 2011-08-08 15:42:18 -05:00 committed by Cole Robinson
parent 79d6063075
commit d078def94f

View File

@ -93,7 +93,7 @@ class Tunnel(object):
nc_params = "%s %s" % (gaddr, gport) nc_params = "%s %s" % (gaddr, gport)
nc_cmd = ( nc_cmd = (
"""nc -q 2>&1 | grep -q "requires an argument";""" """nc -q 2>&1 | grep "requires an argument" >/dev/null;"""
"""if [ $? -eq 0 ] ; then""" """if [ $? -eq 0 ] ; then"""
""" CMD="nc -q 0 %(nc_params)s";""" """ CMD="nc -q 0 %(nc_params)s";"""
"""else""" """else"""