09-24-2008
It's not clear (to me) what you are trying to do here: why can you not use fflush to flush a buffer?
Some immediate observations, though:
getchar returns EOF if nothing is read, rather than a NULL pointer, so don't compare its return value to NULL.
Writing to stdin is unlikely to succeed -- check the return value of fputc.
10 More Discussions You Might Find Interesting
1. Programming
Hi,
Program A: uses pipe()
I am able to read the stdout of PROGAM B (stdout got through system() command) into PROGRAM A using:
* child
-> dup2(fd, STDOUT_FILENO);
-> execl("/path/PROGRAM B", "PROGRAM B", NULL);
* parent
-> char line;
-> read(fd, line, 100);
Question:... (2 Replies)
Discussion started by: vvaidyan
2 Replies
2. Shell Programming and Scripting
Hi everyone, first post here.
Anyone who isn't interested in the background, press pagedown :).
I sometimes need to make scripts for little things I need in the infrastructure at the company I work at. Currently I am trying to make a wrapper script for a proprietary image-deployment program.... (2 Replies)
Discussion started by: andreas.ericson
2 Replies
3. UNIX for Dummies Questions & Answers
Hi,
i know how to
a) redirect stdout and stderr to one file,
b) and write to two files concurrently with same output using tee command
Now, i want to do both the above together.
I have a script and it should write both stdout and stderr in one file and also write the same content to... (8 Replies)
Discussion started by: ysrini
8 Replies
4. Shell Programming and Scripting
#!/bin/sh
exec 0</dev/null
exec 1>/dev/null
ls -l /proc/self/fd >&2 produces total 0
lr-x------ 1 tyler users 64 Feb 18 10:38 0 -> /proc/7886/fd
lrwx------ 1 tyler users 64 Feb 18 10:38 1 -> /dev/pts/4
lrwx------ 1 tyler users 64 Feb 18 10:38 2 -> /dev/pts/4 I've verified the shell is... (10 Replies)
Discussion started by: Corona688
10 Replies
5. Shell Programming and Scripting
Hi,
I am working on a project where I have to generate and execute nasm code on-the-fly. I generate the code in a file program.asm and then execute it.This output is to stdout which i redirect to an output file which i read back to compare results:
system("nasm -f elf program.asm >... (5 Replies)
Discussion started by: doc_cypher
5 Replies
6. Programming
All,
Ok...so I know I *should* be able to control a process's stdin and stdout from the parent by creating pipes and then dup'ing them in the child. And, this works with all "normal" programs that I've tried. Unfortunately, I want to intercept the stdin/out of the scp application and it seems... (9 Replies)
Discussion started by: DreamWarrior
9 Replies
7. Programming
Hi,
i am using the below program to read from the standard input or to write to standard out put.
i know that using highlevel functions this can be done better than what i have done here.
i just want to know is there any other method by which i find the exact number of characters ( this... (3 Replies)
Discussion started by: MrUser
3 Replies
8. UNIX for Dummies Questions & Answers
Hallo,
i have a script like:
if ;then
echo "OK"
else
echo "ERROR $2 is missing"
fi;
if ;then
touch $2
fi;
if ;then
cat $1 | grep xy > $2 (1 Reply)
Discussion started by: eightball
1 Replies
9. UNIX for Advanced & Expert Users
I want to differentiate the STDOUT and STDERR messages in my terminal .
If a script or command is printing a message in terminal I want to differentiate by colors,
Is it possible ?
Example:
$date
Wed Jul 27 12:36:50 IST 2011
$datee
bash: datee: command not found
$alias ls
alias... (2 Replies)
Discussion started by: ungalnanban
2 Replies
10. Shell Programming and Scripting
Well.. let's say i need to write a pretty simple script.
In my script i have 2 variables which can have value of 0 or 1.
$VERBOSE
$LOG
I need to implement these cases:
($VERBOSE = 0 && $LOG = 0) => ONLY ERROR output (STDERR to console && STDOUT to /dev/null)
($VERBOSE = 1... (5 Replies)
Discussion started by: Marmz
5 Replies
DPIPE(1) General Commands Manual DPIPE(1)
NAME
dpipe - bi-directional pipe command
SYNOPSIS
dpipe [ command [ args ] ] = [ command [ args ] ]
dpipe [ command [ args ] ] = [ command [ args ] ] [ = [ command [ args ] ] ] ...
DESCRIPTION
dpipe is a general tool to run two commands diverting the standard output of the first command into the standard input of the second and
vice-versa. It is the bi-directional extension of the | (pipe) syntax used by all the shells. The = has been chosen as a metaphor of two
parallel communication lines between the commands. It is also possible to concatenate several tools. Intermediate programs communicate
using standard input and standard output with the preceding tool and alternate standard input and output (respectively file descriptors
number 3 and 4) towards the following tool. If an intermediate tool should process only the data flowing in one direction use { or } as
suffix for the preceding = and prefix of the following one.
This tool has been written as a tool for the Virtual Distributed Ethernet.
EXAMPLE
dpipe a = b
processes a and b are bidirectionally connected: stdin of a is connected to stdout of b and vice-versa
dpipe a = b = c
a and b are connected as above. Alternate stdin of b is connected to stdout of c and alternate stdout of b to stdin of c
dpipe a =} b }= c
This is a cycle of pipes: stdout of a is connected to stdin of b, stdout of b with stdin of c, and stdout of c to stdin of a
dpipe a =} b }={ c {= d = e
all the notations can be mixed together. this is a -> b -> d -> c and back to a; alternate ports of d are connected to e
OPTIONS
no options.
NOTICE
Virtual Distributed Ethernet is not related in any way with www.vde.com ("Verband der Elektrotechnik, Elektronik und Informationstechnik"
i.e. the German "Association for Electrical, Electronic & Information Technologies").
SEE ALSO
vde_switch(1), vde_plug(1), vde_plug2tap(1), vdeq(1). wirefilter(1).
AUTHOR
VDE is a project by Renzo Davoli <renzo@cs.unibo.it>.
Virtual Distributed Ethernet December 6, 2006 DPIPE(1)