Normal pipes in bash/zsh only redirect stdout to the target process. If you,
for example want to grep the output of strace you need to also redirect stderr
to the target. You can do this by
strace ls |& grep open. On older versions
of bash you need the less handy
strace ls 2>&1 | grep open.
en shorterhacks bash
Shorter Hacksconsists of tips and tricks for Linux nerds. Flags, hacks, and features of everyday tools that you might not know already, but that will enrich your life. I currently have a list of around 40 hacks I collected and plan to publish them roughly weekly. In order for this series to continue, please send me your best trick(s). The focus is not on fancy new tools or extensive rc-file content, but little known features in software most people already use. Send them to .