combined stdout & stderr


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users combined stdout & stderr
# 1  
Old 11-18-2004
combined stdout & stderr

Hello Everyone!
I'm trying to combine output for standard output and for possible standard error to the log file. I was trying to use tee command, but it turned out if error occurred error output will be send to the screen only and will not be redirected with tee command to the log file.
Anyone knows how to make log file to record all possible output including stderr?

Many thanks in advance.
# 2  
Old 11-18-2004
Depends on the shell. For sh, ksh, and bash it's:
some_program > logfile 2>&1
# 3  
Old 11-19-2004
It's a C shell. BTW, I thought, that 2>&1 redirect stderr only to sdtout. Am I wrong?
Thanks.
# 4  
Old 11-19-2004
2>&1 sends stderr to the same place as stdout. Thus combining them as requested. But this only works with real shells. For csh it's

command >& file
# 5  
Old 11-22-2004
Thank you Perderabo for the reply. Seems to me both 2>&1 and >& redirect stderr to file and work fine in C shell, however the problem is that no stdout send to terminal - all output redirected to log file. I would like both outputs to be displayed on the terminal, and both of them redirected to log file ( including errors) at same time. Something like tee command which splits output and allow me to see output on the screen and have it in the log file simultaneously. But the problem with tee, that it can handle stdout only and cannot handle stderr.
If I misunderstood your suggestion, please explain it again.

Thanks,
# 6  
Old 11-22-2004
Something like this will work for bash
Code:
((./myscript arg1 arg2 | tee stdout) 3>&1 1>&2 2>&3 | tee stderr)

This will create two files, stdout and stderr containing the expected output, plus all output will also appear on screen. Replace ./myscript arg1 arg2 with the actual command you're using.

Cheers
ZB
# 7  
Old 11-22-2004
Thank you for the reply.
Nop, unfortunately it does not work, zazzybob. Does C Shell understand 3>&1 1>&2 2>&3?
I'm getting “Ambiguous output redirect”. And I'm getting the same error message while I was trying different combinations of >& and tee... which means to me C shell does not want to see anything after >&. Or I'm able to create log file with stderr in it, but getting nothing to terminal window. I could not imagine it would be so tricky...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Redirect STDOUT & STDERR to file and then on screen

Dear all, redirecting STDOUT & STDERR to file is quite simple, I'm currently using: Code: exec 1>>/tmp/tmp.log; exec 2>>/tmp/tmp.log But during script execution I would like the output come back again to screen, how to do that? Thanks Luc edit by bakunin: please use CODE-tags like the... (6 Replies)
Discussion started by: tmonk1
6 Replies

2. Shell Programming and Scripting

Lost redirecting stderr & stdout to 3 files - one each plus combined

Hi folks I need/want to redirect output (stdout, stderr) from an exec call to separate files. One for stderr only and two(!) different (!) ones for the combined output of stderr and stdout. After some research and testing i got this so far : (( exec ${command} ${command_parameters} 3>&1... (6 Replies)
Discussion started by: MDominok
6 Replies

3. Shell Programming and Scripting

Redirect STDOUT & STDERR to file and then on screen

Dear all, redirecting STDOUT & STDERR to file is quite simple, I'm currently using: exec 1>>/tmp/tmp.log; exec 2>>/tmp/tmp.logBut during script execution I would like the output come back again to screen, how to do that? Thanks Lucas (4 Replies)
Discussion started by: Lord Spectre
4 Replies

4. Shell Programming and Scripting

Prepend TimeStamp to STDERR & STDOUT to a file

Currently I am redirecting STDERR and STDOUT to a log file by doing the following { My KSH script contents } 2>&1 | $DEBUGLOG Problem is the STDERR & STDOUT do not have any date/time associated. I want this to be something that i can embed into a script opposed to an argument I use... (4 Replies)
Discussion started by: nitrobass24
4 Replies

5. Solaris

Handling Stdout&StdErr for background jobs.

Hello Friends, sorry, i am not very familiar with Unix programming. Could you please help me on this? We have to start different components from a startup script. each components are started as below in the background in a startprocess function $nohup $file $args >>$logFile 2>&1 & ... (1 Reply)
Discussion started by: alvinbush
1 Replies

6. Shell Programming and Scripting

Handling Stdout&StdErr for background jobs.

Hello Friends, sorry, i am not very familiar with Unix programming. Could you please help me on this? We have to start different components from a startup script. each components are started as below in the background in a startprocess function $nohup $file $args >>$logFile 2>&1 & ... (0 Replies)
Discussion started by: alvinbush
0 Replies

7. Shell Programming and Scripting

Redirecting STDERR message to STDOUT & file at same time

Friends I have to redirect STDERR messages both to screen and also capture the same in a file. 2 > &1 | tee file works but it also displays the non error messages to file, while i only need error messages. Can anyone help?? (10 Replies)
Discussion started by: vikashtulsiyan
10 Replies

8. Shell Programming and Scripting

getting stderr & stdout output lively modified

This is about getting all output to stderr and stdout localized. Nothing to do with redirecting output to a file (there already are some interesting threads about that issue on this forum). What I intend to do is capturing all lines of text sent to the screen, compare them with an array of... (2 Replies)
Discussion started by: teo ramirez
2 Replies

9. Shell Programming and Scripting

redirecting STDOUT & STDERR

In bash, I need to send the STDOUT and STDERR from a command to one file, and then just STDERR to another file. Doing one or the other using redirects is easy, but trying to do both at once is a bit tricky. Anyone have any ideas? (9 Replies)
Discussion started by: jshinaman
9 Replies

10. Shell Programming and Scripting

stderr & stdout to a file and the right exit code

Hi all, I need to redirect stdout and stderr to a file in a ksh shell. That's not a problem. But I need also the correct exit code for the executed command. In the example below I redirect correctly the stdout & stderr to a file, but I have the exit code of tee command and not for the mv... (2 Replies)
Discussion started by: up69
2 Replies
Login or Register to Ask a Question