From: Pavel Roskin Date: Wed, 15 Jun 2005 00:33:03 GMT Subject: Re: [COGITO PATCH] Optimized print_help() Message-ID: <1118795583.3890.27.camel@dv> In-Reply-To: <20050615000001.GB17152@diku.dk> On Wed, 2005-06-15 at 02:00 +0200, Jonas Fonseca wrote: > Shouldn't $toolpath be quoted here to make it safer? Although it seems > the make install don't handle irregular toolpaths at the moment. Sure. > > + cat $toolpath | sed -n '3,/^$/s/^# *//p' > > What about also removing UUOC from this line ... UUOC? I had too look it up :-) It's not just "useless use of cat", but also useless use of redirection in both cases. I guess sed can exit after it finishes processing the range (I don't know if it actually does), so feeding it the whole file is not need. OK, here's an improved patch. Signed-off-by: Pavel Roskin diff --git a/cg-Xlib b/cg-Xlib --- a/cg-Xlib +++ b/cg-Xlib @@ -130,10 +130,11 @@ update_index () { print_help () { - which "cg-$1" >/dev/null 2>&1 || exit 1 - sed -n '/^USAGE=/,0s/.*"\(.*\)"/Usage: \1/p' < $(which cg-$1) + local toolpath=$(which cg-$1 2>/dev/null) + [ -z "$toolpath" ] && exit 1 + sed -n '/^USAGE=/,0s/.*"\(.*\)"/Usage: \1/p' "$toolpath" echo - cat $(which cg-$1) | sed -n '3,/^$/s/^# *//p' + sed -n '3,/^$/s/^# *//p' "$toolpath" exit } P.S. Maybe we could use "type" rather than "which" because the former is a shell built-in. Or maybe we should hardcode the prefix on install. Anyway, it's out of scope of this patch. P.P.S. I hope that $toolpath doesn't start with "-". I could add "--" to the sed command line, but I'm not sure if BSD sed would like it. -- Regards, Pavel Roskin