Чтобы понять, почему это удивительное поведение не является полностью ужасным, рассмотрите приложение, которое принимает имя файла конфигурации в качестве аргумента:
config_root = "/etc/myapp.conf/"
file_name = os.path.join(config_root, sys.argv[1])
Если приложение выполняется с:
$ myapp foo.conf
Будет использоваться файл конфигурации /etc/myapp.conf/foo.conf
.
Но подумайте, что произойдет, если приложение вызвано с помощью:
$ myapp /some/path/bar.conf
Затем myapp
должен использовать файл конфигурации в /some/path/bar.conf
(а не /etc/myapp.conf/some/path/bar.conf
или аналогичный).
Это может быть не очень хорошо, но я считаю, что это мотивация для поведения абсолютного пути.
Попробуйте следующую формулу: */15 * * * *
. Я также создал этот инструмент , который помогает вам и любому человеку легко создавать расписания cron.
Если вы хотите, чтобы он запускался каждые 15 минут, вам нужно */15
(или 0,15,30,45
), а не *15
.
Более фундаментально, однако, вы должны рассмотреть вопрос о том, чтобы ваш процесс резервного копирования предотвращал дублирование одновременных выполнений с использованием файла блокировки или чего-то подобного.