Sponsored Content
Top Forums Shell Programming and Scripting difference b/t the exit codes $* and $@ Post 302136729 by cfajohnson on Wednesday 19th of September 2007 09:53:19 AM
Old 09-19-2007
Quote:
Originally Posted by praveen_b744
I know that the exit codes in scripting "$*" will returns all the parameters/arguments passwd to the script.

But I also know that "$@" will also returns the same. What is the difference between those two [ $* and $@ ] ?

"$*" and "$@" are not exit codes; they are the command line arguments.

Exit codes are stored in "$?".

When unquoted, $* and $@ are the same; each word in the argument list becomes a separate word.

When quoted, "$*" returns a single argument containing all the command-line arguments; "$@" presents each command-line argument as a separate argument.

For a demonstration, put the following into a script and exceute it with the arguments: a "b c" "d e f" g.

Code:
printf "\n%s\n" "Using \$\*:"
printf "%s\n" $*

printf "\n%s\n" "Using \$\@:"
printf "%s\n" $@

printf "\n%s\n" "Using \"\$\*\":"
printf "%s\n" "$*"

printf "\n%s\n" "Using \"\$\@\":"
printf "%s\n" "$@"

This User Gave Thanks to cfajohnson For This Post:
 

10 More Discussions You Might Find Interesting

1. Programming

exit codes

Where can a locate a list of Unix exit codes? thank you, Donna (3 Replies)
Discussion started by: donna carter
3 Replies

2. UNIX for Dummies Questions & Answers

Where can I find a list of exit codes? (Exit code 64)

I'm receiving an exit code 64 in our batch scheduler (BMC product control-m) executing a PERL script on UX-HP. Can you tell me where I can find a list of exit codes and their meaning. I'm assuming the exit code is from the Unix operating system not PERL. (3 Replies)
Discussion started by: jkuchar747
3 Replies

3. Shell Programming and Scripting

Catching all Exit Codes

I have a Unix Script that has several exit in the middle. each returning seperate exit codes. I have to catch all the exit's and perform an operation say "Mail the status code" before the actual code completes. How can i do this in KSH ? (3 Replies)
Discussion started by: Sivaswami J
3 Replies

4. UNIX for Advanced & Expert Users

Explanation for the exit codes 2

Hi, Can anyone give me the explanation for the exit codes 1 and 2 returned from Korn shell. Thanks in advance. (1 Reply)
Discussion started by: sesedada
1 Replies

5. Shell Programming and Scripting

Exit codes in SFTP

HI All, I have created a unix script which takes 2 parameters and using sftp tranfers files to remote location following is the script #!/bin/ksh # # # Parameter 1 is the complete path of the destination server # Parameter 2 is the complete path of the file which is to be FTP... (1 Reply)
Discussion started by: vikramsnest
1 Replies

6. Shell Programming and Scripting

Exit Codes

Good Morning All.. I was wondering about getting exit codes of a command in a shell script. I'm trying to run uvscan (McAfee command line scanner) and I want to have the log file say why, if at all, the process failed/exited. Something to the extent of If ; then echo "This is why it... (1 Reply)
Discussion started by: cmschube
1 Replies

7. Shell Programming and Scripting

SCP Exit Codes

Hello, I need to ensure that SCP does not leave any partially transmitted files on the remote server due to transmission errors. Can it be assumed that: 1) if SCP returns a success with Exit Code == 0, a complete local file has been copied in its entirety to the remote location? 2)... (1 Reply)
Discussion started by: rogersed
1 Replies

8. UNIX for Dummies Questions & Answers

exit codes from rexec?

how do i/is there a way to return the exit code from the remote host? echo $? from the local host only gives 0, if the rexec command itself executes successfully. But what if in the case of the remote command failiing? echo $? on the localhost still gives 0, but I'm interested in the exit code... (4 Replies)
Discussion started by: diego_sapphire
4 Replies

9. Linux

Exit codes

I am trying to run this SH on Linux and getting error at IF condition. I want to read the EXIT code and send the failure or success message. Please help me on this. This worked when i was running on Solaris. #!/bin/bash $ORACLE_HOME/bin/sqlplus abc/xyz@qwe @/home/test.sql if ;... (4 Replies)
Discussion started by: rlmadhav
4 Replies

10. Shell Programming and Scripting

FTP exit and error codes

I have a script which connects to a remote server via FTP and gets some file from there. #!/bin/bash /usr/bin/ftp -n remote.hostname.com <<EOF quote USER user123 quote PASS password123 lcd /dir1/dir2/dir3 cd / mget file_pattern* close bye EOF rc=$? if ] ... (7 Replies)
Discussion started by: dhruuv369
7 Replies
catch(1T)						       Tcl Built-In Commands							 catch(1T)

__________________________________________________________________________________________________________________________________________________

NAME
catch - Evaluate script and trap exceptional returns SYNOPSIS
catch script ?varName? _________________________________________________________________ DESCRIPTION
The catch command may be used to prevent errors from aborting command interpretation. The catch command calls the Tcl interpreter recur- sively to execute script, and always returns without raising an error, regardless of any errors that might occur while executing script. If script raises an error, catch will return a non-zero integer value corresponding to the exceptional return code returned by evaluation of script. Tcl defines the normal return code from script evaluation to be zero(0), or TCL_OK. Tcl also defines four exceptional return codes: 1 (TCL_ERROR), 2 (TCL_RETURN), 3 (TCL_BREAK), and 4 (TCL_CONTINUE). Errors during evaluation of a script are indicated by a return code of TCL_ERROR. The other exceptional return codes are returned by the return, break, and continue commands and in other special situa- tions as documented. Tcl packages can define new commands that return other integer values as return codes as well, and scripts that make use of the return -code command can also have return codes other than the five defined by Tcl. If the varName argument is given, then the variable it names is set to the result of the script evaluation. When the return code from the script is 1 (TCL_ERROR), the value stored in varName is an error message. When the return code from the script is 0 (TCL_OK), the value stored in resultVarName is the value returned from script. If script does not raise an error, catch will return 0 (TCL_OK) and set the variable to the value returned from script. Note that catch catches all exceptions, including those generated by break and continue as well as errors. The only errors that are not caught are syntax errors found when the script is compiled. This is because the catch command only catches errors during runtime. When the catch statement is compiled, the script is compiled as well and any syntax errors will generate a Tcl error. EXAMPLES
The catch command may be used in an if to branch based on the success of a script. if { [catch {open $someFile w} fid] } { puts stderr "Could not open $someFile for writing $fid" exit 1 } The catch command will not catch compiled syntax errors. The first time proc foo is called, the body will be compiled and a Tcl error will be generated. proc foo {} { catch {expr {1 +- }} } SEE ALSO
break(1T), continue(1T), error(1T), return(1T), tclvars(1T) KEYWORDS
catch, error ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +--------------------+-----------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +--------------------+-----------------+ |Availability | SUNWTcl | +--------------------+-----------------+ |Interface Stability | Uncommitted | +--------------------+-----------------+ NOTES
Source for Tcl is available on http://opensolaris.org. Tcl 8.0 catch(1T)
All times are GMT -4. The time now is 06:55 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy