Hello,

I could repeatedly reproduce an unexpected behaviour on several Linux systems (two installations of Arch Linux [newest state], a Debian [8.7] and a Ubuntu [16.4]).

I ran the following command - when I first ran it, it was accidentially

ps ax | grep -reh

I wanted to grep for processes containing the string "-reh", but forgot the "-e" which was necessary due to the leading dash in the string.

On all systems, grep outputs hundreds of (not even matching) lines from files of my home directory, not at all related to the output of ps, which I piped into grep.

Maybe, the command line is interpreted as:

   * r ... search files recursively in directories. Note, that input is
   read from stdin here.

   * e ... use the following pattern

   * h ... this is the pattern expected by "e"

It may be that all the lines ouput by grep contain "h".

Although expected to be identical, this command works as expected:

ps ax | grep -reh /dev/stdin

Kind regards,

rexkogitans


Reply via email to