Следующее не работает ...
tail -f /var/log/mysql/general.log | grep Connect > /home/myfile.txt
Если я удалю ключ «-f», то я смогу сохранить вывод в текстовый файл, но он не будет работать, если запущен хвост.
И тройник не работает
tail -f /var/log/mysql/general.log | grep Connect -tee "/home/myfile.txt"
Обновить
Команда, предоставляемая квантами, действительно работает.
tail -f /var/log/mysql/general.log | tee >(grep Connect > /home/myfile.txt)
Но я должен держать окно открытым. nohup tail -f ... похоже, не работает. Как мне поддерживать непрерывную работу этой команды?
О вашей проблеме nohup: если вы по какой-то причине не хотите постоянно видеть вывод, я бы не стал создавать отдельный файл с частью журналов (что, по сути, то, что вы делаете), но создавал извлечение по запросу с помощью просто команда grep.
Если вы настаиваете на своем методе, вы можете использовать screen
или tmux
чтобы запустить вашу команду.
На самом деле все работает нормально.
Проблема, вероятно, в том, что вывод буферизируется на каждом шаге, поэтому вам понадобится много вывода, прежде чем он действительно будет сброшен в файл.
tail -f /var/log/mysql/general.log | tee >(grep Connect > /home/myfile.txt)