Назад | Перейти на главную страницу

Спасение вне хвоста

Следующее не работает ...

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)