Вопрос или проблема
В терминале я вижу, когда заканчиваю команду, я вижу, когда ввожу следующую команду
Я использую это решение
https://unix.stackexchange.com/a/622928/675422
exec &> >( ts ‘%Y-%m-%d %H%M.%.S ‘ ) # добавляет временную метку ко всем выводам
Но после завершения команды я не вижу, когда ввожу следующую команду
Возможно ли, или очень-очень нужно сделать так, чтобы после завершения команды я видел, когда ввожу следующую команду
Смотрите скриншот
Спасибо!
Ответ или решение
Для решения вашей задачи по добавлению временных меток ко всем выводам в Terminal и отображению их после выполнения команды, важно понимать, как работает механизм перенаправления вывода в Unix-подобных системах.
Шаги для настройки временных меток
-
Используйте команду timestamp:
Вы уже упомянули использование командыts
, что является отличным началом. Командаts
из пакетаmoreutils
позволяет добавлять временные метки ко всему выводу. Ваша команда выглядит так:exec &> >(ts '%Y-%m-%d %H%M.%.S ')
Это перенаправит весь стандартный вывод и вывод ошибок в команду
ts
, которая добавляет временные метки. -
Сохранение видимости вывода после завершения команды:
После завершения выполнения команды, Terminal может не отображать предыдущий вывод, так как он перенаправляется. Чтобы обеспечить возможность просмотра вывода, вам потребуется использовать дополнительный инструмент или изменить способ, которым вы работаете с выводом.
Способы для ручного просмотра вывода команд
-
Применение команды
tee
:
Вы можете дополнительно использовать командуtee
, чтобы сохранить вывод в файл и одновременно видеть его в Terminal:exec &> >(tee >(ts '%Y-%m-%d %H%M.%.S ') > output.log)
В этом случае вывод будет и отображаться в терминале, и записываться в файл
output.log
, что позволит вам в дальнейшем анализировать историю команд и их результаты. -
Использование средства просмотра:
Чтобы просмотреть содержимоеoutput.log
, можно использовать командуcat
,less
, илиtail -f
для "живого" просмотра в реальном времени:tail -f output.log
Анализ вывода
Теперь, после выполнения команды, вы сможете видеть временные метки для всех строк вывода и при необходимости быстро просмотреть файл с журналом.
Заключение
Подход с использованием tee
для одновременного отображения в терминале и записи в файл является наиболее удобным и эффективным. Этот метод не только позволяет вам работать с временными метками, но также сохраняет все выводимые данные для последующего анализа. Если у вас возникнут дополнительные вопросы или требуются дальнейшие пояснения, не стесняйтесь обращаться!