05-05-2008
The sequence is pipe() / fork() / exec() / waitpid(). Last call reads the exit status of the child process. Use of system() is discouraged as it's costly and resource intensive.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I am working on HPUX11 systems.
I intend to achieve following:
Need to write a shell script that will launch a program on remote UNIX machine. It will be gr8 if in addition, the remote process can be monitored using some feedback.
I donno how to use rsh / ssh for this. (specifying... (1 Reply)
Discussion started by: mrx
1 Replies
2. Programming
Hello all -
I'm writing an app that needs to have another program running BEFORE I fire up my application.
The .exe resides on another computer - not on the computer that my app is running on. This computer is running Tru64 Digital Unix 4.0F
The application that I wrote was built using... (1 Reply)
Discussion started by: kapolani
1 Replies
3. UNIX for Dummies Questions & Answers
Hello,
I needed a help please...
I have an application which launches process. For this i am using fork and execv method calls. By doing this my launched process are now child process of the parent process(launching process). I dont want this to happen, i want the process that is launched to... (1 Reply)
Discussion started by: deepthi
1 Replies
4. UNIX for Dummies Questions & Answers
I have launched telnet on nt and have connected to a unix server,
I'm trying to run a program on the unix server which will launch a gui, but when I try to launch it
I get the message
"display not set\n"
"By default set it to 0.0"
I can sit down at the unix machine and launch the program with... (3 Replies)
Discussion started by: cbachman
3 Replies
5. UNIX for Advanced & Expert Users
Hi!
I would launch this command:
tar -cvvf logswitch.tar `find *.log* -mtime +5` --remove-files
only if
find *.log* -mtime +5
find some files.
Thanks in advance. (10 Replies)
Discussion started by: Minguccio75
10 Replies
6. UNIX for Advanced & Expert Users
Hello - I already have Veritas netbackup installed on Mac OS. But I am not able to find the daemon name for running the backup. Does anyone know How to run netbackup?
Thank you! (3 Replies)
Discussion started by: panchpan
3 Replies
7. UNIX for Dummies Questions & Answers
Hi people,
i just installed Eclipse on my Solaris terminal and i can't seem to run it. Currently i am using the SSH Client software to go to my Unix console.I tried to run the command "eclipse -vm <path of java hre>" as directed however i still can't run the application.
My Command prompt is... (5 Replies)
Discussion started by: wilsontan
5 Replies
8. Linux
Hi all,
I installed RHEL on my machine and realized that firefox browser was not
included at installation. I went back and added it using the Add or Remove
Packages by inserting the dvd I used during installation. The icon is there
but for some reason I cannot lauch. Nothing returns when I... (12 Replies)
Discussion started by: jxh461
12 Replies
9. Shell Programming and Scripting
Hi all! I just got done writing a script. The problem Im running into is I have to lanuch the script with:
sh SCRIPT.sh
Is there a way to launch it with by just entering
SCIPT
into the shell? (3 Replies)
Discussion started by: Grizzly
3 Replies
10. UNIX for Dummies Questions & Answers
Hi
I want to write a very short bash script for doing the following action (on Ubuntu):
First, install java
Second, launch at a specific time (e.g. 4.30 pm) a java ANT program.
How can I do this? (3 Replies)
Discussion started by: Helveticus
3 Replies
WAIT4(2) Linux Programmer's Manual WAIT4(2)
NAME
wait3, wait4 - wait for process to change state, BSD style
SYNOPSIS
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>
#include <sys/wait.h>
pid_t wait3(int *status, int options,
struct rusage *rusage);
pid_t wait4(pid_t pid, int *status, int options,
struct rusage *rusage);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
wait3():
_BSD_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
wait4():
_BSD_SOURCE
DESCRIPTION
The wait3() and wait4() system calls are similar to waitpid(2), but additionally return resource usage information about the child in the
structure pointed to by rusage.
Other than the use of the rusage argument, the following wait3() call:
wait3(status, options, rusage);
is equivalent to:
waitpid(-1, status, options);
Similarly, the following wait4() call:
wait4(pid, status, options, rusage);
is equivalent to:
waitpid(pid, status, options);
In other words, wait3() waits of any child, while wait4() can be used to select a specific child, or children, on which to wait. See
wait(2) for further details.
If rusage is not NULL, the struct rusage to which it points will be filled with accounting information about the child. See getrusage(2)
for details.
RETURN VALUE
As for waitpid(2).
ERRORS
As for waitpid(2).
CONFORMING TO
4.3BSD.
NOTES
Including <sys/time.h> is not required these days, but increases portability. (Indeed, <sys/resource.h> defines the rusage structure with
fields of type struct timeval defined in <sys/time.h>.)
On Linux, wait3() is a library function implemented on top of the wait4() system call.
SEE ALSO
fork(2), getrusage(2), sigaction(2), signal(2), wait(2), signal(7)
COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2010-09-20 WAIT4(2)