Самый простой способ - использовать перенаправление вывода 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}
' {} +
Вы можете использовать at -c
и номер задания, чтобы получить содержимое сценария и либо передать его в вашу оболочку, либо повторно отправить его, а затем удалить задание с помощью atrm
.
Если у вас есть root-доступ, вы можете использовать atq
для идентификации задания, найти соответствующий сценарий задания в каталоге /var/spool/cron/atjobs/
(или там, где ваша версия инструментов at
помещает его )и запустить вручную от имени соответствующего пользователя, а затем удалите запланированное задание.