В grep имя файла не надо.
Не надо, верно. Это я скопировал не то. Но все так же работает через раз, делая файл пустым.
То есть читаем файл - грепаем строчки - пишем файл. А не грепаем файл и сразу в тот же файл пишем, который грепаем.
При запуске команд в конвеере все команды стартуют одновременно (почти), в этом и вся фишка.
Если раньше стартанет
grep - то будет вывод и сработает.
Но если раньше стартанет
tee - то не сработает, т.к - он сделает файлу -
turncate,
grep ничего не найдет, и файл будет пустым.
Нашел решение:
grep PATTERN file | (sleep 0.1 ; tee file)