Укажите альтернативные шаблоны к grep

Я ищу конец 2 командных строк, которые инициированы от crontab планировщика и должны быть видимы от /var/log/syslog. Это, чтобы проверить, что запланированное задание действительно выполняется.

Мои строки в crontab похожи на это:

*/1 6-23 * * 1-7 sleep 50; cd /tmp2 && /usr/bin/Rscript run1.R

*/1 6-23 * * 1-7 sleep 50; cd /tmp2 && /usr/bin/Rscript run2.R

Это работает:

tail -f /var/log/syslog | grep run1.R

Это не работает:

tail -f /var/log/syslog | grep run1.R && run2.R
1
задан 14 February 2019 в 14:08

1 ответ

Это

tail -f /var/log/syslog | grep run1.R && run2.R

будет работать

tail -f /var/log/syslog | grep run1.R

и когда и если это выйдет успешно, то это будет (пробовать к) выполненный

run2.R

впоследствии из-за && промежуток. Я предполагаю, что Вы хотите один из

tail -f /var/log/syslog | grep -F -e run1.R -e run2.R
tail -f /var/log/syslog | grep -E "run[12]\.R"
tail -f /var/log/syslog | grep -E "run1\.R|run2\.R"

отфильтровать строки, которые содержат также run1.R или run2.R (или оба).

Отметьте это tail -f /var/log/syslog обычно никогда выходы пока данный файл не существуют - который должен иметь место для того конкретного файла.

3
ответ дан 3 December 2019 в 07:21

Другие вопросы по тегам:

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