Sponsored Content
Top Forums Shell Programming and Scripting In ksh, how does an in-line child sub-process get its own PID? Post 302074905 by matrixmadhan on Saturday 27th of May 2006 08:02:36 AM
Old 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

Script to kill all child process for a given PID

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

Child Process PID

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

printing ppid,child pid,pid

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

child pid in ZSH

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

Killing child process in ksh

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

Need to get pid of a process and have to store the pid in a variable

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

[KSH/Bash] Starting a parent process from a child process?

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

forking a child process and kill its parent to show that child process has init() as its parent

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

Getting child process id for a given PID

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

ksh child process not ignoring SIGTERM

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
print(1)							   User Commands							  print(1)

NAME
print - shell built-in function to output characters to the screen or window SYNOPSIS
ksh print [-Rnprsu [n]] [arg]... ksh93 print [-Renprs] [-f format] [-u fd] [string...] DESCRIPTION
ksh The shell output mechanism. When no options are specified, or when an option followed by ' a - is specified, or when just - is specified, the arguments are printed on standard output as described by echo(1). ksh93 By default, print writes each string operand to standard output and appends a NEWLINE character. Unless, the -r, -R, or -f option is speciifed, each character in each string operand is processed specially as follows: a Alert character.  Backspace character. c Terminate output without appending NEWLINE. The remaining string operands are ignored. E Escape character (ASCII octal 033). f FORM FEED character. NEWLINE character. Tab character. v Vertical tab character. \ Backslash character. x The 8-bit character whose ASCII code is the 1-, 2-, or 3-digit octal number x. OPTIONS
ksh The following options are supported by ksh: -n Suppresses new-line from being added to the output. -r-R Raw mode. Ignore the escape conventions of echo. The -R option prints all subsequent arguments and options other than -n. -p Cause the arguments to be written onto the pipe of the process spawned with |& instead of standard output. -s Cause the arguments to be written onto the history file instead of standard output. -u [ n ] Specify a one digit file descriptor unit number n on which the output is placed. The default is 1. ksh93 The following options are supported by ksh93: -e Unless -f is specified, process sequences in each string operand as described above. This is the default behavior. If both -e and -r are specified, the last one specified is the one that is used. -f format Write the string arguments using the format string format and do not append a NEWLINE. See printf(1) for details on how to specify format. When the -f option is specified and there are more string operands than format specifiers, the format string is reprocessed from the beginning. If there are fewer string operands than format specifiers, then outputting ends at the first unneeded for- mat specifier. -n Do not append a NEWLINE character to the output. -p Write to the current co-process instead of standard output. -r Do not process sequences in each string operand as described above. -R If both -e and -r are specified, the last one specified is the one that is used. -s Write the output as an entry in the shell history file instead of standard output. -u fd Write to file descriptor number fd instead of standard output. The default value is 1. EXIT STATUS
The following exit values are returned: 0 Successful completion. >0 Output file is not open for writing. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ SEE ALSO
echo(1), ksh(1), ksh93(1), printf(1), attributes(5) SunOS 5.11 27 Mar 2008 print(1)
All times are GMT -4. The time now is 01:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy