Hmmm. One way you can avoid quotes within quotes, and keep everything intact including spaces, is using the $1 $2 ... arguments. This will override your $1 $2 ... variables but if you're not using them anyway...
So whenever you get a new argument, you can do set -- "$@" "next arg" "another arg" "Etc"
To use the arguments in order withour rearrangement or splitting, you can do $command "$@"
Again, note that "$@" is special. It does split, unlike other things in double-quotes -- but only on arguments, not on spaces, so the exact arguments you give are preserved.
And because of the way shell handles quotes, --arg="whatever" actually gets passed as --arg=whatever anyway. You do not need to insert quotes into there as long as no extra splitting happens, which will never happen with "$@".
Last edited by Corona688; 08-13-2012 at 01:49 PM..
Hi,
I am new to unix. Is their a way to pass the output of the line below to a variable var1.
ls -1t | head -1.
I am trying something like var1=ls -1t | head -1, but I get error.
Situation is: I get file everyday through FTP in my unix box. I have to write a script that picks up first... (1 Reply)
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;
sscanf(argv, "%d", &anInteger);
sscanf(argv, "%s", &message);
Based... (2 Replies)
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)
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)
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)
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)
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)
Hi All,
Below is a sample command that I can run without any problem in the command line.
Command Line
dtToday=`date +%Y%m%d`; ls -ltr ./filename_${dtToday}.txt
-rw-r--r-- 1 monuser oinstall 0 Jan 18 11:02 ./filename_20130118.txt
But once I put that command line in file (list.txt) and... (3 Replies)
Hi,
I am calling a Perl script in my shell script. When Perl script is executed it asks for a answer to be entered by user from terminal. How can i pass that value from my shell script ??
I know I can change perl script to default the answer but i dont have access to do that so only option i... (5 Replies)
Discussion started by: varun22486
5 Replies
LEARN ABOUT PHP
func_get_args
FUNC_GET_ARGS(3) 1 FUNC_GET_ARGS(3)func_get_args - Returns an array comprising a function's argument listSYNOPSIS
array func_get_args (void )
DESCRIPTION
Gets an array of the function's argument list.
This function may be used in conjunction with func_get_arg(3) and func_num_args(3) to allow user-defined functions to accept variable-
length argument lists.
RETURN VALUES
Returns an array in which each element is a copy of the corresponding member of the current user-defined function's argument list.
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.
EXAMPLES
Example #1
func_get_args(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) . "
";
}
$arg_list = func_get_args();
for ($i = 0; $i < $numargs; $i++) {
echo "Argument $i is: " . $arg_list[$i] . "
";
}
}
foo(1, 2, 3);
?>
The above example will output:
Number of arguments: 3
Second argument is: 2
Argument 0 is: 1
Argument 1 is: 2
Argument 2 is: 3
Example #2
func_get_args(3) example before and after PHP 5.3
test.php
<?php
function foo() {
include './fga.inc';
}
foo('First arg', 'Second arg');
?>
fga.inc
<?php
$args = func_get_args();
var_export($args);
?>
Output previous to PHP 5.3:
array (
0 => 'First arg',
1 => 'Second arg',
)
Output in PHP 5.3 and later:
Warning: func_get_args(): Called from the global scope - no function
context in /home/torben/Desktop/code/ml/fga.inc on line 3
false
Example #3
func_get_args(3) example of byref and byval arguments
<?php
function byVal($arg) {
echo 'As passed : ', var_export(func_get_args()), PHP_EOL;
$arg = 'baz';
echo 'After change : ', var_export(func_get_args()), PHP_EOL;
}
function byRef(&$arg) {
echo 'As passed : ', var_export(func_get_args()), PHP_EOL;
$arg = 'baz';
echo 'After change : ', var_export(func_get_args()), PHP_EOL;
}
$arg = 'bar';
byVal($arg);
byRef($arg);
?>
The above example will output:
0 => 'bar', ) After change : array (
0 => 'bar', ) As passed : array (
0 => 'bar', ) After change : array (
0 => '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_arg(3), func_num_args(3), ReflectionFunctionAbstract::getParameters.
PHP Documentation Group FUNC_GET_ARGS(3)