04-11-2011
Question on pipes in C
If a code forks 2 childs, what can the values be for the process id's of each of the child? I child pid is supposed to be 0, but what if you fork 2 of them?
10 More Discussions You Might Find Interesting
1. Solaris
This is weird, so I'm hoping someone here knows solaris and how it handles pipes...
OK... here goes...
Theres this log file, right? I want to tail -f it, grep that, gzip that, then pipe that into more commands. Well thats easy, right?
tail -f file | grep pattern | gzip | otherstuff...
... (1 Reply)
Discussion started by: sannik
1 Replies
2. Filesystems, Disks and Memory
Hello!
How I can increase or decrease predefined pipe buffer size?
System FreeBSD 4.9 and RedHat Linux 9.0
Thanks! (1 Reply)
Discussion started by: Jus
1 Replies
3. Shell Programming and Scripting
Hi,
Can the cd command be invoked using pipes???
My actual question is slightly different. I am trying to run an executable from different folders and the path of these folders are obtained dynamically from the front end. Is there a way in which i can actually run the executable... (2 Replies)
Discussion started by: Sinbad
2 Replies
4. UNIX for Advanced & Expert Users
I am trying to figure out why when i have the following code
int main( { printf("0\n"); fork(); printf("1\n"); exit(0);}
and type in the shell
a.out | cat
the output of this program is
0
1
0
1
instead of
0
1
1
does anyone know? (3 Replies)
Discussion started by: Phantom12345
3 Replies
5. UNIX for Advanced & Expert Users
This is something I've given a lot of thought to and come up with no answer.
Say you have a data stream passing from a file, through process A, into process B. Process A only modifies a few bytes of the stream, then prints the rest of the stream unmodified. Is there any way to stream the file... (4 Replies)
Discussion started by: Corona688
4 Replies
6. Shell Programming and Scripting
Hi,
thanks for b4. can anyone tell me why following not working:
noUsers=$(who | cut -d" " -f1 | wc -l)
What i'm trying to do is get a list of logged on users and pass it to 'wc -l' and store the output to a variable. Any ideas? (1 Reply)
Discussion started by: Furqan_79
1 Replies
7. Programming
Hello all, I am trying to learn more about programming Unix pipes in C.
I have created a pipe that does od -bc < myfile | head
Now, I am trying to create od -bc < myfile | head | wc
Here is my code, and I know I might be off, thats why I am here so I can get some clarification.
#include... (1 Reply)
Discussion started by: petrca
1 Replies
8. Shell Programming and Scripting
ls --color=always -laX | awk '{print $1, $3, $4, $2, $8}'
|sort -k 1,1 -k 9,9r
they work separately... but i don't know how to combine this to work.
thx! (1 Reply)
Discussion started by: surreal7z
1 Replies
9. Programming
problem solved. (1 Reply)
Discussion started by: superfons
1 Replies
10. Programming
Hi, I have two programs, one is named "Master" and the other one "slave". What I want to do is , when I execute Master, inside slave will be called by excecl, do some calculations, and send those to the master program... A little example of what I am failing to do:
if ((PID1=fork())==0) { //... (6 Replies)
Discussion started by: lamachejo
6 Replies
setpgid(2) System Calls Manual setpgid(2)
NAME
setpgid(), setpgrp2() - set process group ID for job control
SYNOPSIS
DESCRIPTION
The and system calls cause the process specified by pid to join an existing process group or create a new process group within the session
of the calling process. The process group ID of the process whose process ID is pid is set to pgid. If pid is zero, the process ID of the
calling process is used. If pgid is zero, the process ID of the indicated process is used. The process group ID of a session leader does
not change.
is provided for backward compatibility only.
Security Restrictions
Some or all of the actions associated with this system call are subject to compartmental restrictions.
See compartments(5) for more information about compartmentalization on systems that support that feature. Compartmental restrictions can
be overridden if the process possesses the privilege (COMMALLOWED). Processes owned by the superuser may not have this privilege. Pro-
cesses owned by any user may have this privilege, depending on system configuration.
See privileges(5) for more information about privileged access on systems that support fine-grained privileges.
RETURN VALUE
and return the following values:
Successful completion.
Failure.
is set to indicate the error.
ERRORS
If or fails, is set to one of the following values.
The value of pid matches the process ID of a child process of the calling process and the child process has successfully executed
one of the exec(2) functions.
The value of pgid is less than zero or is outside the range of valid process group ID values.
The process indicated by
pid is a session leader.
The value of pid is valid but matches the process ID of a child process of the calling process, and the child process is not in
the same session as the calling process.
The value of pgid does not match the process ID of the process indicated by pid and there is no process with a process group ID
that matches the value of pgid in the same session as the calling process.
The value of pid does not match the process ID of the calling process or of a child process of the calling process.
AUTHOR
and were developed by HP and the University of California, Berkeley.
SEE ALSO
bsdproc(3C), exec(2), exit(2), fork(2), getpid(2), kill(2), setsid(2), signal(2), privileges(5), termio(7).
STANDARDS CONFORMANCE
setpgid(2)