Я бы рекомендовал использовать /etc/cron.d
вместо crontab
.
Вы можете разместить файлы в /etc/cron.d
, которые ведут себя как записи crontab. Хотя формат немного другой.
Например
/etc/cron.d/pcap
:
*/05 * * * * root bash /mnt/md0/capture/delete_old_pcap.sh
*/12 * * * * root bash /mnt/md0/capture/merge_pcap.sh
Разница в формате заключается в добавлении пользователя для запуска задания после указанного времени.
Теперь вы можете просто проверить, существует ли файл, и если вы его перезапишете, это не имеет значения.
Обратите внимание: возможно, у вашего демона cron нет /etc/cron.d
. Я не знаю, у каких демонов cron он есть, но vixie cron - стандартный демон cron в Linux, и он есть.
cd /path/to/abc; cnt=0; for i in *.*; do mv "$i" "${PWD##*/}_$((++cnt)).${i##*.}"; done
cd
войти в этот каталог *.*
используется только для выбора файлов с суффиксом mv
на echo
, чтобы посмотреть, как будет выглядеть результат, прежде чем возиться Редактировать:
Если вы хотите сделать это для нескольких каталогов, сбросьте счетчик в каждом каталоге.
Один вкладыш:
for i in */*.*; do [ "$dn" != "${i%/*}" ] && cnt=0; dn="${i%/*}"; mv "$i" "${dn}/${dn}_$((++cnt)).${i##*.}"; done
Красиво напечатано:
for i in */*.*; do
# reset counter if different directory or dn is unset
[ "$dn" != "${i%/*}" ] && cnt=0
# set directory name
dn="${i%/*}"
# move file
mv "$i" "${dn}/${dn}_$((++cnt)).${i##*.}"
done
Для лучшего понимания ознакомьтесь с этим :-Я хочу сделать это в сценарии, поэтому у меня есть одна команда, т.е.
i=0
for f in */* ; do i=$(( i+1 )) fp=$(dirname "$f"); ext="${f##*.}" ; echo "$f" "$fp"/"$fp"_"$i"."$ext" ;done
И вывод такой-
123/1.jpg 123/123_1.jpg
123/2.jpg 123/123_2.jpg
123/3.jpg 123/123_3.jpg
2275/2275_1.jpg 2275/2275_4.jpg
2275/2275_2.jpg 2275/2275_5.jpg
2275/2275_3.jpg 2275/2275_6.jpg
2275/2275_4.jpg 2275/2275_7.jpg
2275/2275_5.jpg 2275/2275_8.jpg
2275/2275_6.jpg 2275/2275_9.jpg
2275/2275_7.jpg 2275/2275_10.jpg
2275/2275_Thumbs.db 2275/2275_11.db
456/1.jpg 456/456_12.jpg
456/2.jpg 456/456_13.jpg
456/3.jpg 456/456_14.jpg
Но я хочу, чтобы этот вывод был похож на-
123/1.jpg 123/123_1.jpg
123/2.jpg 123/123_2.jpg
123/3.jpg 123/123_3.jpg
2275/2275_1.jpg 2275/2275_1.jpg
2275/2275_2.jpg 2275/2275_2.jpg
2275/2275_3.jpg 2275/2275_3.jpg
2275/2275_4.jpg 2275/2275_4.jpg
2275/2275_5.jpg 2275/2275_5.jpg
2275/2275_6.jpg 2275/2275_6.jpg
2275/2275_7.jpg 2275/2275_7.jpg
2275/2275_Thumbs.db 2275/2275_8.db
456/1.jpg 456/456_1.jpg
456/2.jpg 456/456_2.jpg
456/3.jpg 456/456_3.jpg