In what folllows, it's important to realize that pipe redirection occurs before any other redirections specified by a command.
You can redirect stderror into a pipe thusly:
Note, however, that standard output (from the date command) is still going into that pipe as well. If you don't want stdout to go into the pipe, and instead go to whereever stdout was going before the pipe redirection, before executing the eval pipeline, you can save the original, pre-pipe stdout destination in a file descriptor.
Note that the date command's output did not go through sed, but directly to the terminal, in essence, the usual stdout/stderr behavior of a pipe redirection have been flipped.
Also, it's always a good idea to close file descriptors when they're no longer needed (particularly when using an interactive shell or a long-lived shell-script):
Regards,
Alister
Herez the question,
In a process which writes into file FILE1 with descriptor
fHandler1 and it is run as a background process
where would statements be directed
when stderr descriptor is used.
fprintf(stderr,"some message\n");
assume that session from which it is run is terminated and... (3 Replies)
can pipe sychronize thread or process? because I'm trying to create 5 thread or process that can take an integer value and display it. each time a thread display the value, it has to be decrement it by 1 until the value has reach 0. The problem that I'm having is how can that integer value be... (1 Reply)
I have the following code which works on AIX 4.3 but fails at times on AIX 5.3
with:
cat: 0652-054 cannot write to output. There is no process to read data written to a pipe.
validator="${validator_exe} ${validator_parms}"
cmd_line="${CAT} ${data_file} | ${validator}... (6 Replies)
Hi folks :)
Can deamonized process access to stderr, stdout?
I 'm trying to display error_num/return value of a function run() in stderr using
fprintf(stderr, "function run() returns = %d", ret_val);
run() is called after deamonizing the process. (1 Reply)
Hi.. I am hoping someone could assist me with the pipe program I wrote below. I want to have communication from parent to child and then child to parent.. Is my logic right?
int p,p1;
pipe(p);
pipe(p1);
pid_t pid = fork();
if(pid == 0)
{
close(p);
close(p1);
dup2(p,0);... (1 Reply)
Hi Everyone,
The machine I'm working on is an AIX 5.3 LPAR running on a P650. oslevel -r shows 5300-08. I'm trying to take a backup to a SCSI tape drive, which has been working up until this point. I know of nothing that has changed recently to cause this problem. But when I try to take a... (0 Replies)
We use SAP application cluster on AIX. Communication between 2 of its instances is failing randomly with the following error:
java.net.SocketException: There is no process to read data written to a pipe.
The above error causes a cluster restart if an important communication fails.
Can... (0 Replies)
Hi,
I've came across an issue with a script I've been writing to check DHCP addresses on an Solaris system, the script has been running reasonably well, until it hit the following problem:
./sub_mon_v2: redirection error: cannot duplicate fd: Too many open files
./sub_mon_v2: cannot make... (3 Replies)
Dear all,
I use a pipe command to assign a variable:
$ v_LstStdCdhId=$(cat Bteq_Xport_GetLstStdViewToBuild__1274.txt | grep 'CD/39/AT/CDH_BV_ODS'|cut -d"/" -f1)
$ echo "${v_LstStdCdhId}"
43
49
My aim is to concatenate for each line of the variable v_LstStdCdhId the character "/" in... (3 Replies)
Discussion started by: dae
3 Replies
LEARN ABOUT DEBIAN
rngtest
RNGTEST(1) General Commands Manual RNGTEST(1)NAME
rngtest - Check the randomness of data using FIPS 140-2 tests
SYNOPSIS
rngtest [-c n | --blockcount=n] [-b n | --blockstats=n] [-t n | --timedstats=n] [-p | --pipe] [-?] [--help] [-V] [--version]
DESCRIPTION
rngtest works on blocks of 20000 bits at a time, using the FIPS 140-2 (errata of 2001-10-10) tests to verify the randomness of the block of
data.
It takes input from stdin, and outputs statistics to stderr, optionally echoing blocks that passed the FIPS tests to stdout (when operating
in pipe mode). Errors are sent to stderr.
At startup, rngtest will throw away the first 32 bits of data when operating in pipe mode. It will use the next 32 bits of data to boot-
strap the FIPS tests (even when not operating in pipe mode). These bits are not tested for randomness.
Statistics are dumped to stderr when the program exits.
OPTIONS -p, --pipe
Enable pipe mode. All data blocks that pass the FIPS tests are echoed to stdout, and rngtest operates in silent mode.
-c n, --blockcount=n (default: 0)
Exit after processing n input blocks, if n is not zero.
-b n, --blockstats=n (default: 0)
Dump statistics every n blocks, if n is not zero.
-t n, --timedstats=n (default: 0)
Dump statistics every n secods, if n is not zero.
-?, --help
Give a short summary of all program options.
-V, --version
Print program version
STATISTICS
rngtest will dump statistics to stderr when it exits, and when told to by blockstats or timedstats.
FIPS 140-2 successes and FIPS 140-2 failures counts the number of 20000-bit blocks either accepted or rejected by the FIPS 140-2 tests.
The other statistics show a breakdown of the FIPS 140-2 failures by FIPS 140-2 test. See the FIPS 140-2 document for more information
(note that these tests are defined on FIPS 140-1 and FIPS 140-2 errata of 2001-10-10. They were removed in FIPS 140-2 errata of
2002-12-03).
The speed statistics are taken for every 20000-bit block trasferred or processed.
EXIT STATUS
0 if no errors happen, and no blocks fail the FIPS tests.
1 if no errors happen, but at least one block fails the FIPS tests.
10 if there are problems with the parameters.
11 if an input/output error happens.
12 if an operating system or resource starvation error happens.
SEE ALSO random(4), rngd(8)
FIPS PUB 140-2 Security Requirements for Cryptographic Modules, NIST,
http://csrc.nist.gov/cryptval/140-2.htm
AUTHORS
Henrique de Moraes Holschuh <hmh@debian.org>
rng-tools 2-unofficial-mt.14 March 2004 RNGTEST(1)