Запланировать запуск в задании сейчас

Самый простой способ - использовать перенаправление вывода awk. Перенаправление вывода Awk очень легко использовать в простых случаях: файл открывается при первом использовании перенаправления, а последующие перенаправления к тому же имени файла используют существующий дескриптор файла.

Если вы хотите добавить суффикс к имени файла, это было бы так же просто, как

find -type f -iname "*.txt" -exec awk '{print $1, $2 >(FILENAME "-new")}' {} +

Но вы можете сделать более сложное преобразование имени файла (здесь пересчитывается только в первой строке каждого входного файла):

find -type f -iname "*.txt" -exec awk '
    FNR==1 {out=FILENAME; sub(/\.[^.]*$/, "-new&", out) || out = out "-new"}
    {print $1, $2 >out}
' {} +
3
15.03.2018, 05:23
2 ответа

Вы можете использовать at -cи номер задания, чтобы получить содержимое сценария и либо передать его в вашу оболочку, либо повторно отправить его, а затем удалить задание с помощью atrm.

2
27.01.2020, 21:21

Если у вас есть root-доступ, вы можете использовать atqдля идентификации задания, найти соответствующий сценарий задания в каталоге /var/spool/cron/atjobs/(или там, где ваша версия инструментов atпомещает его )и запустить вручную от имени соответствующего пользователя, а затем удалите запланированное задание.

1
27.01.2020, 21:21

Теги

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