Как проверить журнал выполнения для пакетного задания, отправленного с помощью команды `на `?

Вы также можете ввести smb://host-or-ipaddress/sharenameв адресную строку в окне Files, а затем ввести имя пользователя, домен и пароль во всплывающем окне.

0
26.05.2021, 13:31
2 ответа

Инструмент atзахватывает стандартный вывод процесса, а затем отправляет его в виде журнала. Таким образом, без значительных изменений в atневозможно прочитать этот журнал в том виде, в котором он написан.

Но вы можете найти обходной путь с помощью второго журнала. Просто распечатайте журнал «прогресс» в файл с известным именем. После этого вы можете tail -fего, если хотите, или проигнорировать.

Другими словами, скрипт, который вы запускаете с помощью at, будет выглядеть примерно так:

#!/bin/sh
echo Started at `date` 
echo Started at `date` > /var/myscript.log
some_long_running_process_with_log >> /var/myscript.log
rc=$?
echo Completed at `date` with return code $rc
echo Completed at `date` with return code $rc >> /var/myscript.log

В этом случае у вас будет короткий журнал (всего с двумя строками )для at, чтобы отправить вам письмо, и весь журнал из длинной внутренней части.

В качестве расширения этого подхода вы можете использовать tee. Это позволяет дублировать стандартный вывод в файл. Что, в свою очередь, может помочь с дублированием печати сообщений журнала в скрипте.

#!/bin/sh
echo Started at `date` | tee /var/myscript.log
some_long_running_process_with_log >> /var/myscript.log
rc=$?
echo Completed at `date` with return code $rc | tee -a /var/myscript.log
0
28.07.2021, 11:29

Это будет очень многословно, однако, если вы добавите -x в оболочку в первой строке myscript.sh, она покажет вам построчное выполнение вашего скрипта. Выходные данные будут отправлены по электронной почте -пользователю, отправляющему задание, а также представлены в журнале cron.

Пример, #!/bin/sh -x вместо #!/bin/sh

Во время выполнения задания просто нажмите -в журнале cron, и вы сможете наблюдать за ходом выполнения. Напоминаем, что это создаст много данных журнала! Вы можете изменить свой сценарий, чтобы каким-то образом показать прогресс? echo "Разборка завершена, начинается установка xxx"

1
28.07.2021, 11:29

Теги

Похожие вопросы