Не загружайте существующий файл с акселем

У меня есть скрипт, который читает некоторые URL-адреса и переводит их в аксель для их загрузки. Я хочу остановить сценарий и возобновить его дальше. Аксель может возобновить загрузку файлов. Поэтому, если я нажимаю Ctrl+C при загрузке, в следующий раз, он начинается с возобновления файла.

но аксель не проверяет, существует ли файл. Таким образом, он добавляет ".0" в конец имени файла и начинает скачивать его дважды. Как я могу сказать акселю, если файл с таким именем существует, пропустить это и не загружать его??

3 ответа

Если вы хотите, чтобы аксель возобновился, вы должны использовать

axel -o NAME_OF_EXISTING_FILE

Если вы хотите проверить, существует ли файл

if [ -f $FILE ];
then
   echo "File $FILE exists." #operation related to when file exists
else
   echo "File $FILE does not exist." #operation related to when file does not exists
fi

Или же

if [ ! -f /tmp/foo.txt ];
then
    echo "File not found!" #operation related to when file does not exists
fi

Bash скрипт отсюда

Аксель использует файл состояния, названный с расширением.st.
Он регулярно обновляется во время загрузки.
Когда аксель запускается, он сначала проверяет наличие и . Если найдено, загрузка возобновляется с того места, где она остановлена.
Какая у вас версия? Я получил Axel версии 2.4 (Linux), и она возобновилась после CTRL+C.

Вы можете использовать axel с-cфлаг. Отaxel --help:

      --no-clobber        -c  Skip download if file already exists

(Версия 2.17.11)

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