05-27-2006
Quote:
Anyway, I thought of a way to do it...I think. Background the subshell. Have the parent obtain $! and send it into the subshell via a named pipe. Then the parent waits for the subshell to exit.
if the subshell that is spawned is sent to the background process group,
there are subtle points to be noted:::
if the subshell is interactive one and if it has to be switched to foreground process group and that must be explicitly done by the parent and it cannot do that by itself; only thing that could be done by the child itself is being stopped by generating SIGTTIN/SIGTTOU
if the subshell is non-interactive, care must be taken that the subshell should not support any of the job control activities.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Is there any build in command in unix to kill all the child process for a given process ID ? If any one has script or command, please let me know.
Thanks
Sanjay (4 Replies)
Discussion started by: sanjay92
4 Replies
2. Programming
Hi,
Can anybody solve this query?
A parent process forks 2 child processes. How does the child process know it's PID without the parent process sending it.
Apart from the "ps-ef" option, what other options are there if any? (2 Replies)
Discussion started by: skannan
2 Replies
3. Programming
question: for the below program
i just printed the value for pid, child pid and parent pid
why does it give me 6 values? i assume ppid is 28086
but can't figure out why there are 5 values printed instead of just two!
can someone comment on that!
#include<stdio.h>
#define DIM 8
int... (3 Replies)
Discussion started by: a25khan
3 Replies
4. Shell Programming and Scripting
I am using ZSH shell in Linux.
I am calling a child program in background mode parallely (say 2-3 threads). I have problem in handling the temporary files of these child programs since the temp file names are unique for all the child process.
To distinguish i want to use the pid in the temp... (3 Replies)
Discussion started by: dhams
3 Replies
5. Shell Programming and Scripting
I have a script that (ideally) starts tcpdump, sleeps a given number of seconds, then kills it.
When I do this for 10 seconds or and hour, it works fine. When I try it for 10 hours (the length I actually want) it just doesn't die, and will actually stick around for days.
Relevant part of my... (1 Reply)
Discussion started by: upnix
1 Replies
6. UNIX for Dummies Questions & Answers
Hi,
I need to get the pid of a process and have to store the pid in a variable and i want to use this value(pid) of the variable for some process. Please can anyone tell me how to get the pid of a process and store it in a variable. please help me on this.
Thanks in advance,
Amudha (7 Replies)
Discussion started by: samudha
7 Replies
7. Shell Programming and Scripting
Hey all, I need to launch a script from within 2 other scripts that can run independently of the two parent scripts... Im having a hard time doing this, if anyone knows how please let me know.
More detail.
ScriptA (bash), ScriptB (ksh), ScriptC (bash)
ScriptA, launches ScriptB
ScirptB,... (7 Replies)
Discussion started by: trey85stang
7 Replies
8. Shell Programming and Scripting
Hi everyone
i am very new to linux , working on bash shell.
I am trying to solve the given problem
1. Create a process and then create children using fork
2. Check the Status of the application for successful running.
3. Kill all the process(threads) except parent and first child... (2 Replies)
Discussion started by: vizz_k
2 Replies
9. Shell Programming and Scripting
HI
Am trying to get child process id for a PID using ksh..
ps -ef | grep xntpd
root 3342472 2228308 0 12:17:40 - 0:00 /usr/sbin/xntpd
root 4522024 6488316 0 12:18:56 pts/0 0:00 grep xntpd
root 6291614 3342472 0 12:17:40 - 0:00 /usr/sbin/xntpd
Here now i... (1 Reply)
Discussion started by: Priya Amaresh
1 Replies
10. Shell Programming and Scripting
My ksh version is ksh93-
=>rpm -qa | grep ksh
ksh-20100621-3.fc13.i686
I have a simple script which is as below - #cat test_sigterm.sh -
#!/bin/ksh
trap 'echo "removing"' QUIT
while read line
do
sleep 20
done
I am Executing the script From Terminal 1 - 1. The ksh is started... (3 Replies)
Discussion started by: rpoornar
3 Replies
TERM(1) General Commands Manual TERM(1)
NAME
term - turn PC into a dumb terminal [IBM]
SYNOPSIS
term [baudrate] [parity] [bits_per_character] [-dial_string] [device]
EXAMPLES
term 2400 # Talk to modem at 2400 baud
term 1200 7 even # 1200 baud, 7 bits/char, even parity
term 8 9600 /dev/tty01
# 9600 baud, 8 bits/char, no parity, use tty01
term -atdt12345 /dev/tty01
# Start with a command to dial out
DESCRIPTION
Term allows MINIX to talk to a terminal or modem over RS232 port 1. The program first sets the baudrate, parity and character length, and
then forks. The parent sits in a loop copying from stdin (usually the console's keyboard), to the terminal or modem (/dev/tty00). The
child sits in a loop copying from the terminal or modem (/dev/tty00) to standard output. Thus when RS232 port 1 is connected to a modem,
every keystroke typed on the keyboard is sent to the modem, and every character arriving from the modem is displayed. Standard input and
output may be redirected, to provide a primitive file transfer program, with no checking. Any argument that starts with a minus ('-') is
sent out to the modem, usually to dial out. Term accepts several commands that are formed by typing the escape character, CTRL-], and a
letter. Type CTRL-]? to see a list of commands. The subshell command is very important, it allows you to type in a ZMODEM command to
transfer data. Do not quit term to do this, or your modem line will be reset! Term keeps the modem line open on file descriptor 9 while
running the subshell, so you can type
<&9 >&9
at the end of your ZMODEM command to connect it to the modem.
Important note: to use term, it is essential that /etc/ttytab is configured so that there is no shell hanging on /dev/tty01. If there is,
both the shell and term will try to read from /dev/tty01, and nothing will work.
SEE ALSO
rz(1), sz(1).
TERM(1)