Я использую wget для загрузки списка файлов с URL, вот моя команда:
wget --user='username' --password='mypassword' -i url.txt
Это скачивает список .gz
файлов
Что мне нужно Чтобы сделать это:
Есть ли команда? или список команд, которые могут выполнить это, которые я могу вставить в cronjob? Мне нужно запускать это один раз в день.
Благодаря
Это скорее вопрос * nix, чем Ubuntu-центричный.
В общем, вы бы написали скрипт (с использованием языка bash или, возможно, Python), который обрабатывает задачу, которую вы описываете. Одна строка скрипта будет вашей командой, выше ... остальные будут обрабатывать проверку каталога, удаление, разархивирование и т. Д.
Тогда вы просто использовали бы cron (google up crontab), чтобы настроить запуск скрипта в определенное время.
Давайте попробуем однострочно:
rm -rfi * && wget -q -O - --user='username' --password='mypassword' -i url.txt | wget - && find . -name "*.zip" -exec "unzip && rm" {} \;
Не стесняйтесь редактировать / адаптировать: это может быть действительно неправильно, так как я не всегда чувствую себя комфортно с -
псевдо-дескриптор и как каждое приложение обрабатывает его.
Очистить текущий каталог.
rm -rfi *
Получить список, но вместо отправки содержимого в файл, перенаправить его на stdout
(используя -q
, -O
и псевдодескриптор -
).
wget -q -O - --user='username' --password='mypassword' -i url.txt
Загрузка файлов, имена которых отправляются с предыдущего вызова wget
. Опять же, -
делает относится к стандартному вводу, который также является выводом предыдущей команды.
wget -
Найдите все zip-файлы в каталоге и выполните unzip
и rm
для каждого из них.
find . -name "*.zip" -exec "unzip && rm" {} \;