Frank M. Ramaekers Jr. Systems Programmer; MCP, MCP+I, MCSE & RHCE American Income Life Insurance Company Phone: (254) 761-6649 Fax: (254) 741-5777 -----Original Message----- From: centos-bounces at centos.org [mailto:centos-bounces at centos.org] On Behalf Of Garrick Staples Sent: Wednesday, May 09, 2007 3:38 PM To: CentOS mailing list Subject: Re: [CentOS] Scripting question On Wed, May 09, 2007 at 03:28:53PM -0500, Frank M. Ramaekers alleged: > >The first line in your function is only logging its first argument, not > >all arguments; and since you pass $line unquoted, the first word is the > >first argument. > > > >You could either quote $line: ``LogIt "$line"'', or use all arguments > in > >LogIt: ``Msg="$@"''. > > > >-- > >Garrick Staples, GNU/Linux HPCC SysAdmin > >University of Southern California > > > >09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0 > > That makes sense now...I didn't realize the difference...thanks! So now that that makes sense to you, let me say that you should use both solutions :) Quoting $line ensures that special meta-characters aren't expanded. For example, if $line contained a *, then the shell could expand it with files in the current directory. And using $@ instead of $1 in LogIt is just more flexible and is closer to your actual intention of "log everything I pass on this line." -- Garrick Staples, GNU/Linux HPCC SysAdmin University of Southern California 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0 --- Thanks, that helps explain it...and I did incorporate both! Frank M. Ramaekers Jr. Systems Programmer; MCP, MCP+I, MCSE & RHCE American Income Life Insurance Company Phone: (254) 761-6649 Fax: (254) 741-5777