DEV Community

Discussion on: Stupid Short: Bash's |, >, >>, <, 2>>, 2> Operators

Collapse
 
thorstenhirsch profile image
Thorsten Hirsch

Here's one more I'm using sometimes:

$ call-foo > out_and_err.txt 2>&1

So here I'm redirecting STDERR to the address of STDOUT, which is a file called "out_and_err.txt".

Collapse
 
fennecdjay profile image
Jérémie Astor

I think that in recent bash and zsh, one can use

call-foo &> out_and_err.txt
Collapse
 
sinewalker profile image
Mike Lockhart • Edited

This is my favourite "shut up, I don't want to see any output, even if it fails, just do, or don't do, the thing" shortcut:

call-foo &> /dev/null
Thread Thread
 
fennecdjay profile image
Jérémie Astor

I think you have a small typo here.
Shouldn't it read

call-foo &> /dev/null
Thread Thread
 
sinewalker profile image
Mike Lockhart

Thank you, fixed 😁

Thread Thread
 
fennecdjay profile image
Jérémie Astor

You're welcome.

Collapse
 
bananabrann profile image
Lee • Edited

I would've done call-foo > out-and-error.txt 2> out-and-error.txt; I've never heard of 2>&1 or &>. Very cool! Thanks for that!

What would be a practical application of print stdout and stderr to the same file?

@fennecdjay
@thorstenhirsch
@sinewalker

Thread Thread
 
sinewalker profile image
Mike Lockhart

Openssl prints diagnostic info to stderr and certificate info to stdout. If you want them both in the same filter stream, &> is very handy. Or if you want them all in the same single log file

Collapse
 
masedi profile image
Edi Septriyanto

What's & mean?

Collapse
 
ismiyati profile image
ismiyati