Output Command-Line Arguments One by One (Unix Power Tools, 3rd Edition)
27.5. Output Command-Line Arguments One by One
Go to http://examples.oreilly.com/upt3 for more information on: showargs
When
you're experimenting
with shell quoting, it's nice to be able to see how
arguments on a command line are quoted. Here's a
demo of a simple bash script[83]
named showargs; you might want to save it in a file and run it yourself (Section 35.1). The script shows how many arguments were
passed to it. Then it lists the arguments, one per line, surrounded
by >> << to show leading or trailing
spaces.
[83]The
script uses bash because, as this article explains
later, its built-in echo (Section 27.5) command has the -E option to
prevent interpretation of special characters.
cat Section 12.2,
&& Section 35.14,
$# Section 35.20, path Section 35.7
% cat showargs
#!/bin/bash
test $# -ne 1 && s=s
echo "I got $# argument$s:"
for arg
do echo -E ">>$arg<<"
done
% showargs "Start of path:" $path[1-3] " that's it! "
I got 5 arguments:
>>Start of path:<<
>>/u/jpeek/bin<<
>>/bin<<
>>/usr/bin<<
>> that's it! <<
The output from your shell may differ from that shown above, which is
the result of running showargs in
tcsh. bash
doesn't have a $path variable,
for example. And zsh expects a comma, rather than
a hyphen, to separate the range. But as long as the arguments to
showargs are quoted properly, you should get the
result you're looking for, with a little tweaking,
of course!
--JP and SJC
27.4. Command Evaluation and Accidentally Overwriting Files27.6. Controlling Shell Command Searches
Copyright © 2003 O'Reilly & Associates. All rights reserved.
Wyszukiwarka
Podobne podstrony:
ch27 (13)CH27 (11)ch27ch27 (9)ch27 (4)ch27DK2192 CH27ch27ch27 (3)ch27 (2)CH27więcej podobnych podstron