Sponsored Content
Top Forums Shell Programming and Scripting Can $? return multiple values? Post 302417417 by jim mcnamara on Thursday 29th of April 2010 01:45:56 PM
Old 04-29-2010
Return values (like $? in shell) from child processes are 8 bit numbers. This is because
the syscall, wait(), truncates a return value from a child process to the lowest 8 bits.

The range for 8 bit numbers is 0->255 (unsigned) or -128 -> 127 (signed).

That is all there is for $? in shell. Nothing else like multiple return values.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

exit/return values

Sys: HP-UX 9000 In the calling script how do I 'read' the return/exit value of a called script?:confused: THX in advance for any assistence.:) (1 Reply)
Discussion started by: vslewis
1 Replies

2. Shell Programming and Scripting

Possible return values for $?

I think the $? returns 0 if the last issued command was successful and otherwise if not. But does anyone knows the value list that may be returned ? (or it is only zero/one ? ) Thanks in advance, Abrahao. (3 Replies)
Discussion started by: 435 Gavea
3 Replies

3. Shell Programming and Scripting

Help: return values from awk

Hi. I have a script like this: nawk 'BEGIN {FS=","; TOT1=0; REJ1=0;} { if($7=="TOTAL") { TOT1=TOT1 +$8} if($7=="REJS") { REJ1=REJ1 +$8} }' FILE_123.dat and... (1 Reply)
Discussion started by: mrodrig
1 Replies

4. Shell Programming and Scripting

Remote ssh and return values..

hi I'm executing below 2 cmds which is working file.. ( cmd will ssh to remote host and look for pattern in remote file) ssh $USER@$HOST "grep -n \"$PATTERN\" $RDIR/$RFILE | awk -F":" '{print \$1}'|tr '\n' ':'|sed 's/:$//g'" > /tmp/_log_out VAR=`cat /tmp/_log_out` output in /tmp/_log_out... (2 Replies)
Discussion started by: id100
2 Replies

5. Shell Programming and Scripting

Need Multiple Return Values

Hi, I need to retrun multiple values function errorFileCreation { echo "Before" return -1 "Siva"; echo "Aftyer" } echo ${?} - This can be used to getting first value. how can i get second one. Advance Thanks... Shiv (3 Replies)
Discussion started by: rsivasan
3 Replies

6. Shell Programming and Scripting

Return multiple values using for loop in perl

I am using a for loop to copy files from say DIR1 and DIR2 to DIR3.I have to check whether files are copied from DIR1 and DIR2 and print the respective message. @path=("$DIR1","$DIR2"); foreach (@path) { $rc=system("cp $_/*xml $DIR3"); if ($rc == 0) { print "Files were copied... (1 Reply)
Discussion started by: liyakathali
1 Replies

7. Shell Programming and Scripting

Returning and capturing multiple return values from a function

Hi I am pretty confused in returning and capturing multiple values i have defined a function which should return values "total, difference" i have used as #!/usr/bin/ksh calc() { total=$1+$2 echo "$total" diff=$2-$1 echo "$diff" } I have invoked this function as calc 5 8 Now i... (2 Replies)
Discussion started by: Priya Amaresh
2 Replies

8. Shell Programming and Scripting

Query the table and return values to shell script and search result values from another files.

Hi, I need a shell script, which would search the result values from another files. 1)execute " select column1 from table_name" query on the table. 2)Based on the result, need to be grep from .wft files. could please explain about this.Below is the way i am using. #!/bin/sh... (4 Replies)
Discussion started by: Rami Reddy
4 Replies

9. Shell Programming and Scripting

Read record from the text file contain multiple separated values & assign those values to variables

I have a file containing multiple values, some of them are pipe separated which are to be read as separate values and some of them are single value all are these need to store in variables. I need to read this file which is an input to my script Config.txt file name, first path, second... (7 Replies)
Discussion started by: ketanraut
7 Replies

10. Shell Programming and Scripting

[bash] wanted: function with a clean way for multiple return values

Hi, I have a small part of a project which is done as a bash script. bash was selected as an portability issue that works out of the box. In this script I have an exec shell-function, a wrapper around arbitrary commands. I want to have STDOUT, as an addon STDERR and the EXIT-CODE of a specified... (5 Replies)
Discussion started by: stomp
5 Replies
fork(2) 							System Calls Manual							   fork(2)

Name
       fork - create a new process

Syntax
       #include <sys/types.h>
       #include <unistd.h>

       pid = fork()
       pid_t pid;

Description
       The  system  call causes creation of a new process.  The new process (child process) is an exact copy of the calling process except for the
       following:

       o    The child process has a unique process ID.

       o    The child process has a different parent process ID (that is, the process ID of the parent process).

       o    The child process has its own copy of the parent's descriptors.  These descriptors reference the same underlying objects, so that, for
	    instance,  file  pointers  in file objects are shared between the child and the parent, so that a on a descriptor in the child process
	    can affect a subsequent read or write by the parent.  This descriptor copying is also used by the shell to	establish  standard  input
	    and output for newly created processes as well as to set up pipes.

       o    The child processes resource utilizations are set to 0.  For further information, see

Return Values
       Upon  successful  completion,  returns  a  value  of  0	to the child process and returns the process ID of the child process to the parent
       process.  Otherwise, a value of -1 is returned to the parent process, no child process is created, and the global variable errno is set	to
       indicate the error.

Diagnostics
       The system call fails and no child process are created under the following conditions:

       [EAGAIN]       The system-imposed limit {PROC_MAX} on the total number of processes under execution would be exceeded.

       [EAGAIN]       The system-imposed limit {CHILD_MAX} on the total number of processes under execution by a single user would be exceeded.

       [ENOMEM]       There is insufficient swap space for the new process.

See Also
       execve(2), wait(2)

																	   fork(2)
All times are GMT -4. The time now is 01:32 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy