Sponsored Content
Top Forums Shell Programming and Scripting Arguments in variable vs direct string Post 302985409 by break_da_funk on Wednesday 9th of November 2016 08:18:06 AM
Old 11-09-2016
Question Arguments in variable vs direct string

Hello Community!
Let's say that we have some script which counts its arguments number:
arguments_count.sh:
Code:
#!/bin/sh
echo "Number of arguments="$#

and some test script:
test.sh:
Code:
#!/bin/sh
my_args="1 2 3 '4 5' 6"
echo "Count of arguments when using my_args:"
./arguments_count.sh $my_args
echo "Count of arguments when using direct string:"
./arguments_count.sh 1 2 3 '4 5' 6

Output after execute test.sh is:
Code:
Count of arguments when using my_args:
Number of arguments=6
Count of arguments when using direct string:
Number of arguments=5

What should I do to get output for "my_args" the same as for direct string?

Last edited by Scrutinizer; 11-09-2016 at 04:10 PM.. Reason: quote tags -> code tags
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Joining string arguments

Hi, how can I join given arguments (not starting from the first one) to form one string, each argument separated by a space. For example, out of 5 given arguments, I'll like to start joining from the 3rd to the last. In python there exists something like ' '.join(sys.argv) and it starts joining... (5 Replies)
Discussion started by: plhelpme
5 Replies

2. Shell Programming and Scripting

How to call arguments with variable in a script??

Hello, I was wondering if it were possible to call arguments passed to a script using a variable. For example: sh script.sh yes no good bad x=$# while do echo (last argument, then second last etc until first argument) let x=($x-1) done should print out bad good no (4 Replies)
Discussion started by: VanK
4 Replies

3. Shell Programming and Scripting

How to make bash wrapper for java/groovy program with variable length arguments lists?

The following bash script does not work because the java/groovy code always thinks there are four arguments even if there are only 1 or 2. As you can see from my hideous backslashes, I am using cygwin bash on windows. export... (1 Reply)
Discussion started by: siegfried
1 Replies

4. Shell Programming and Scripting

Print arguments with the help of variable

Let's say I want to print the arguments $4 till $#, how can I do this? $# contains the number of arguments $@ contain all the arguments as string What i need is something like for i in $4_till_$#; do #do something with $i convert $i ~/$output done The first 3 arguments are used as options... (6 Replies)
Discussion started by: hakermania
6 Replies

5. Shell Programming and Scripting

string manipulation in arguments

Hi all, I have a requirement where I am taking the first argument as argument name and storing the second argument in argument name as value. Thanks to ppl here, i learnt to do it.:p while ( $1 != "" ) set arg = $1 shift set val = "$1" echo "set... (2 Replies)
Discussion started by: animesharma
2 Replies

6. Shell Programming and Scripting

Removing command line arguments from string list

I am passing a list of strings $list and want to remove all entries with --shift=number, --sort=number/number/..., --group=number/number/... Also are removed whether upper or lower case letters are used For example the following will all be deleted from the list --shift=12 --shift=2324... (7 Replies)
Discussion started by: kristinu
7 Replies

7. Shell Programming and Scripting

Manipulating sed Direct Input to Direct Output

Hi guys, been scratching round the forums and my mountain of resources. Maybe I havn't read deep enough My question is not how sed edits a stream and outputs it to a file, rather something like this below: I have a .txt with some text in it :rolleyes: abc:123:xyz 123:abc:987... (7 Replies)
Discussion started by: the0nion
7 Replies

8. Shell Programming and Scripting

Processing arguments in a string

Hi The following code works when reading the arguments from the command line but fails when I try to read from a string. So this works while ; do case $1 in -dbversion) if '`" ]; then { echo "ERROR: missing value for '$1' (seen '$2')"; usage; exit 1; } else { shift;... (6 Replies)
Discussion started by: user052009
6 Replies

9. Shell Programming and Scripting

ksh parsing arguments in a string rather than from the cmdln

Hi. I have a piece of code that reads and parses command line options. I'd like to alter it slightly to read from a string (that's set elsewhere in the script) rather than directly from the command line (arg). Can somebody show me how to do this? Many thanks. My code is as follows: typeset... (6 Replies)
Discussion started by: user052009
6 Replies

10. UNIX for Beginners Questions & Answers

Check if string variable is a subset of another string variable

Below is my ksh shell script where I need to check if variable fileprops is a subset of $1 argument. echo "FILE PROPERTY: $fileprops" echo "PARAMETER3: $1" if ; then echo "We are Good. $line FILE is found to be INTACT !! " else echo... (2 Replies)
Discussion started by: mohtashims
2 Replies
FUNC_GET_ARG(3) 							 1							   FUNC_GET_ARG(3)

func_get_arg - Return an item from the argument list

SYNOPSIS
mixed func_get_arg (int $arg_num) DESCRIPTION
Gets the specified argument from a user-defined function's argument list. This function may be used in conjunction with func_get_args(3) and func_num_args(3) to allow user-defined functions to accept variable- length argument lists. PARAMETERS
o $arg_num - The argument offset. Function arguments are counted starting from zero. RETURN VALUES
Returns the specified argument, or FALSE on error. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.3.0 | | | | | | | This function can now be used in parameter | | | lists. | | | | | 5.3.0 | | | | | | | If this function is called from the outermost | | | scope of a file which has been included by call- | | | ing include(3) or require(3) from within a func- | | | tion in the calling file, it now generates a | | | warning and returns FALSE. | | | | +--------+---------------------------------------------------+ ERRORS
/EXCEPTIONS Generates a warning if called from outside of a user-defined function, or if $arg_num is greater than the number of arguments actually passed. EXAMPLES
Example #1 func_get_arg(3) example <?php function foo() { $numargs = func_num_args(); echo "Number of arguments: $numargs "; if ($numargs >= 2) { echo "Second argument is: " . func_get_arg(1) . " "; } } foo(1, 2, 3); ?> The above example will output: Number of arguments: 3 Second argument is: 2 Example #2 func_get_arg(3) example before and after PHP 5.3 test.php <?php function foo() { include './fga.inc'; } foo('First arg', 'Second arg'); ?> fga.inc <?php $arg = func_get_arg(1); var_export($arg); ?> Output previous to PHP 5.3: Output in PHP 5.3 and later: Warning: func_get_arg(): Called from the global scope - no function context in /home/torben/Desktop/code/ml/fga.inc on line 3 false Example #3 func_get_arg(3) example of byref and byval arguments <?php function byVal($arg) { echo 'As passed : ', var_export(func_get_arg(0)), PHP_EOL; $arg = 'baz'; echo 'After change : ', var_export(func_get_arg(0)), PHP_EOL; } function byRef(&$arg) { echo 'As passed : ', var_export(func_get_arg(0)), PHP_EOL; $arg = 'baz'; echo 'After change : ', var_export(func_get_arg(0)), PHP_EOL; } $arg = 'bar'; byVal($arg); byRef($arg); ?> The above example will output: After change : 'bar' As passed : 'bar' After change : 'baz' NOTES
Note Because this function depends on the current scope to determine parameter details, it cannot be used as a function parameter in ver- sions prior to 5.3.0. If this value must be passed, the results should be assigned to a variable, and that variable should be passed. Note If the arguments are passed by reference, any changes to the arguments will be reflected in the values returned by this function. Note This function returns a copy of the passed arguments only, and does not account for default (non-passed) arguments. SEE ALSO
... syntax in PHP 5.6+, func_get_args(3), func_num_args(3). PHP Documentation Group FUNC_GET_ARG(3)
All times are GMT -4. The time now is 10:09 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy