avangard aria2gui - качалка для data.cod.rulinux, aria2c, zenity, gui, datacod
Накрапал небольшую гуёвую качалку по списку файлов для data.cod использую aria2c и zenity. aria2c использовал ибо и в zenity проценты скачанного может отдать и дозагрузка файла работает адекватно, ну и самое главное что имя файла корректно получить в отличии от wget . Хотя и wget пришлось использовать — не нашел как перенаправить вывод от aria2 на stdout (если кто знает как это сделать, подскажите).
Если кто не знает то, data.cod это сервис обмена файлами для пользователей авангарда — у нас во Пскове скорость закачки оттуда почти метр/сек при тарифе в мегабитку. Так же можно использовать и как просто гуёвую качалку, ибо если не data.cod то качаем без изысков sed'а
Если кто не знает то, data.cod это сервис обмена файлами для пользователей авангарда — у нас во Пскове скорость закачки оттуда почти метр/сек при тарифе в мегабитку. Так же можно использовать и как просто гуёвую качалку, ибо если не data.cod то качаем без изысков sed'а
#!/bin/sh
# data.cod.sh
# GUI file downloader for Pskov.Data.Cod.Ru & datagrad
# Powered by muhas (http://muhas.ru)
#
TITLE="avangard aria2gui"
URL=$(zenity --title="$TITLE" --text-info --editable --title="Введите список URL" --width=500 --height=300)
for URL in $URL
do
FOUND=`echo $URL| grep data.cod.ru`
if [ -n "$FOUND" ]; then
URL=`wget -q $URL -O - |sed '/download/!d'|awk -F\" '{print ($4)}'`
if [ -n "$URL" ]; then
echo "файл найден"
else
echo "не найден"
notify-send "Ошибка" "Файл отсутсвует на сервере" && continue;
fi
fi
aria2c $URL --file-allocation=none |grep -E -o "[0-9]+%" --line-buffered | zenity --title="$TITLE" --text="загружаем $URL" --progress --auto-close --auto-kill --width=400
done
notify-send "Загрузка завершена" "Загрузка файлов из списка завершена"
Конечно как полноценная качалка не катит, но для использования data.cod мне вполне хватает. Можно дописать получение урлов с stdin и выбор папки сохранения после чего пользовать как простейщую гуёвую качалку, но надобность такой для меня отсутствует.
muhas
# 27-10-2009, 20:58
andrew, If this is set to on, experimental (not fully-functional) support for "Content-Disposition" headers is enabled и т.д.
вообще зачастую не получает имя. хотя с вгетом попроще в zenity отправлять. я бы curl заюзал но остановило извращения по отправке в zenity количества скачанного, а так grep -E -o "[0-9]+%" и всё (в wget ещё и sed юзать надо)
вообще зачастую не получает имя. хотя с вгетом попроще в zenity отправлять. я бы curl заюзал но остановило извращения по отправке в zenity количества скачанного, а так grep -E -o "[0-9]+%" и всё (в wget ещё и sed юзать надо)






wget'ом тоже можно получить правильное имя файла, параметр --content-disposition