10-15-2012
When a child process runs no variables are visible to the parent process. So if you create or change a variable in your background process you will not see it in the interactive (parent) process
9 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi, guys !
I need some expert help on following problem:
When trying to restore content of a machine using another backup machine using Ufsdump/Ufsrestore, it worked on /local1, but when attemting to do the same on /local2,/local3 and /local4, I get permission problems.
Running superuser does... (9 Replies)
Discussion started by: DGoubine
9 Replies
2. Shell Programming and Scripting
Net::SSH::Perl ...... how to print the output in a proper format
my $cmd = "ls -l";
my $ssh = Net::SSH::Perl->new($host);
$ssh->login($user, $pass);
my($stdout, $stderr, $exit) = $ssh->cmd("$cmd");
print $stdout;
the script works fine, but i am unable to see the output... (2 Replies)
Discussion started by: gsprasanna
2 Replies
3. UNIX for Dummies Questions & Answers
Hi friends,
I have a script that sets the env variable path based on different conditions.
Now the new path variable setting should not done in the same terminal or same shell.
Only a new terminal or new shell should have the new path env variable set.
I am able to do this only as follows:
>cd... (1 Reply)
Discussion started by: sowmya005
1 Replies
4. UNIX for Dummies Questions & Answers
Hi I am trying to find files over a size given by the user.
this is what I have so far
echo "Enter a pathname to check (example = /home/jsk1gcc/testwork): "
read input
echo "Enter a the size (examples = 100k, 10M, 1G): "
read size
find $input -size +$size
echo
echo "Hit the Enter... (2 Replies)
Discussion started by: AngelFlesh
2 Replies
5. UNIX for Dummies Questions & Answers
Hi everyone -
I'm trying to start a run of LAMMPS (which takes an input file) with mpiexec on multiple processors. I want to combine this with nohup so that I can log off the node. I've used the syntax below successfully on one cluster, but it doesn't work on the new one I'm using. Any... (0 Replies)
Discussion started by: erin85
0 Replies
6. Shell Programming and Scripting
I need a script to to instert the following line into my postfix master.cf file:
flags=Rq user=filter argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient}if I use echo I get the line truncated:
:~ echo flags=Rq user=filter argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient}... (3 Replies)
Discussion started by: barrydocks
3 Replies
7. UNIX for Dummies Questions & Answers
I recently generated myself the following error when attempting to use the Unix mail command:
The flags you gave make no sense since you're not sending mail.
There is a recent thread about this issue here in unix.com (with a title very much like this thread's title), but it was closed... (2 Replies)
Discussion started by: Clovis_Sangrail
2 Replies
8. UNIX for Advanced & Expert Users
I've moved a physical server over to VMWare ESXi 5.1 using SCO 6.0 with MP4. For whatever reason, people are occasionally getting kicked out or are closing out their telnet session and it is leaving their processes running. When this happens, the sar %idle drops from 98-95% down to 25-20%. ... (1 Reply)
Discussion started by: Carlitos71
1 Replies
9. Shell Programming and Scripting
Hello everybody,
I have a Problem with sed command.
I want to replace a defined string with a string from a database field (dynamic).
e.g.
sed -i -e 's/%NAME%/'"$HNAME"'/g'
The Problem is that the $HNAME variable can contain Special characters like '&'
e.g.
HNAME="AH Kruger & Co. KG"
... (1 Reply)
Discussion started by: Bambuti2000
1 Replies
FORK(2) BSD System Calls Manual FORK(2)
NAME
fork -- create a new process
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <unistd.h>
pid_t
fork(void);
DESCRIPTION
The fork() system call causes creation of a new process. The new process (child process) is an exact copy of the calling process (parent
process) except for the following:
o The child process has a unique process ID.
o The child process has a different parent process ID (i.e., 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 an lseek(2) on a descriptor in the
child process can affect a subsequent read(2) or write(2) 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 process' resource utilizations are set to 0; see setrlimit(2).
o All interval timers are cleared; see setitimer(2).
o The child process has only one thread, corresponding to the calling thread in the parent process. If the process has more than one
thread, locks and other resources held by the other threads are not released and therefore only async-signal-safe functions (see
sigaction(2)) are guaranteed to work in the child process until a call to execve(2) or a similar function.
RETURN VALUES
Upon successful completion, fork() 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.
ERRORS
The fork() system call will fail and no child process will be created if:
[EAGAIN] The system-imposed limit on the total number of processes under execution would be exceeded. The limit is given by the
sysctl(3) MIB variable KERN_MAXPROC. (The limit is actually ten less than this except for the super user).
[EAGAIN] The user is not the super user, and the system-imposed limit on the total number of processes under execution by a single
user would be exceeded. The limit is given by the sysctl(3) MIB variable KERN_MAXPROCPERUID.
[EAGAIN] The user is not the super user, and the soft resource limit corresponding to the resource argument RLIMIT_NPROC would be
exceeded (see getrlimit(2)).
[ENOMEM] There is insufficient swap space for the new process.
SEE ALSO
execve(2), rfork(2), setitimer(2), setrlimit(2), sigaction(2), vfork(2), wait(2)
HISTORY
The fork() function appeared in Version 6 AT&T UNIX.
BSD
May 31, 2013 BSD