На самом деле это не ищет нигде. Это ожидает входа от стандартного входа.
Попробуйте это:
beast:~ viroos$ grep foo
когда Вы вводите строку, содержащую "нечто", и совершаете нападки, входят, эта строка будет повторена иначе, курсор будет перемещен в новую строку, но grep ничего не распечатает.
Точно, поскольку в предыдущем ответе Maciek говорится:
На самом деле это не ищет нигде. Это ожидает входа от стандартного входа.
Однако можно записать в stdin уже запускающей программы, если Вы имеете/proc в наличии путем передачи по каналу данных в, он - 0th первый дескриптор:
В одном выполненном терминале
grep "hello"
и посмотрите, что он ожидает неограниченно долго... В другом терминальном типе это:
echo "hello $USER" > /proc/`pgrep grep`/fd/0
посмотрите первую терминальную печать привет и Ваше имя пользователя.
grep -r PATTERN
с более новой версией GNU grep не будет читать стандартный вход, но искать шаблон в текущем каталоге (см. фиксацию). Это изменение имеет смысл, так как Вы, вероятно, не хотите искать стандартный вход, когда Вы указываете-r
флаг. – hluk 16.05.2012, 18:13