05-28-2007
Command line args
My program usage takes the form for example;
$ theApp 2 "one or more words"
i.e. 3 command line arguments; application name, an integer, some text
My code includes the following 4 lines:
int anInteger;
char words[80];
sscanf(argv[1], "%d", &anInteger);
sscanf(argv[2], "%s", &message);
Based on th example execution shown above this code results in th following assignments:
anInterger = 2 /* correct and as I thought*/
message = one /* not as I thought or intended*/
I thought when I printed out the value of message I would get:
one or more words
but instead I get:
one
I have done a test and the use of the " " marks seems to make "one or more words" be seen as a single argument. If I don't use the " " marks it sees every word as another argument.
So even though the program sees "one or more words" as a single argument, sscanf is not reading it properly. How can I overcome this problem?
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello,
How do I make a command line argument required using getopts?
Thanks. (6 Replies)
Discussion started by: yoi2hot4ya
6 Replies
2. UNIX for Dummies Questions & Answers
I am trying to print command line arguments one per second. I have this
while
do
echo "6"
shift
echo "5"
shift
echo "4"
shift
echo "3"
shift
echo "2"
shift
echo "1"
shift
done (2 Replies)
Discussion started by: skooly5
2 Replies
3. UNIX for Dummies Questions & Answers
I have this while loop and at the end I am trying to get it to tell me the last argument I entered. And with it like this all I get is the sentence with no value for $1. Now I tried moving done after the sentence and it printed the value of $1 after every number. I don't want that I just want... (2 Replies)
Discussion started by: skooly5
2 Replies
4. Shell Programming and Scripting
Hi,
I have to store all the command line arguments into an array.
I have the following code.
**********************
#! /bin/sh
set -A arr_no_updates
i=1
while
do
arr_no_updates=$($i)
echo ${arr_no_updates}
i=$(($i+1))
done**************** (1 Reply)
Discussion started by: little_wonder
1 Replies
5. Shell Programming and Scripting
I have this code, I thought it would automatically know the args sent to script when called from shell. But it seems to not see any...
main script:
. args
. errors
. opt
. clean
dbfile=""
opfile=""
# calls function in script below
chkarg
#check commands (2 Replies)
Discussion started by: gcampton
2 Replies
6. Shell Programming and Scripting
Hi I am executing a KSH script by passing command line arguments
example: Red Green Dark Red Blue
when I am splitting the arguments by using " "(Space) as delimiter
But the colour Dark Red is a single parameter. But it is getting splitted in between
How to avoid this. Please help Also... (4 Replies)
Discussion started by: hemanth424
4 Replies
7. Shell Programming and Scripting
Hi,
i have a perl script named test.pl. It is executed as
cat *.log|test.pl
i need the complete command line args. I tried using basename $0 but im getting test.pl only but not cat *.log...
Can anyone help me on this.
Thanks in advance (3 Replies)
Discussion started by: niteesh_!7
3 Replies
8. Emergency UNIX and Linux Support
Hi,
Can you please hint me how to achieve the below?
Input:
$./script.sh start 1 2
Internally inside the script i want to set a single variable with $2 and $3 value?
Output:
CMD=$1
ARGS=$2 $3
--VInodh (10 Replies)
Discussion started by: vino_hymi
10 Replies
9. Shell Programming and Scripting
Hello All,
I have a Bash Script and an Expect script that together will SSH to another server and
do some stuff there... From within the Bash Script I process the Command Line Arguments,
which are Required Args and Optional Args.
When I call the Expect script from the Bash Script, I pass... (4 Replies)
Discussion started by: mrm5102
4 Replies
10. Shell Programming and Scripting
I'm using getopts to process command line args in a Bash script. The code looks like this:
while getopts ":cfmvhs:t:" option; do
case $option in
c) operationMode="CHECK"
;;
f) operationMode="FAST"
;;
m) ... (6 Replies)
Discussion started by: gencon
6 Replies
LEARN ABOUT DEBIAN
app::cmd::command::commands
App::Cmd::Command::commands(3pm) User Contributed Perl Documentation App::Cmd::Command::commands(3pm)
NAME
App::Cmd::Command::commands - list the application's commands
VERSION
version 0.318
DESCRIPTION
This command plugin implements a "commands" command. This command will list all of an App::Cmd's commands and their abstracts.
METHODS
execute
This is the command's primary method and raison d'etre. It prints the application's usage text (if any) followed by a sorted listing of
the application's commands and their abstracts.
The commands are printed in sorted groups (created by "sort_commands"); each group is set off by blank lines.
"sort_commands"
my @sorted = $cmd->sort_commands(@unsorted);
This method orders the list of commands into sets which it returns as a list of arrayrefs.
By default, the first group is for the "help" and "commands" commands, and all other commands are in the second group.
AUTHOR
Ricardo Signes <rjbs@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Ricardo Signes.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
perl v5.14.2 2012-05-05 App::Cmd::Command::commands(3pm)