2015-10-22 4 views
0

Я хочу загрузить весь сайт с помощью команды wget -r и изменить имя файла. Я попытался с:Как переименовать файлы, загруженные с помощью wget -r

wget -r -o doc.txt "http....

надеясь, что операционная система будет иметь автоматически создавать файл в порядке, как Doc1.txt doc2.txt, но это на самом деле сохранить поток в стандартный вывод в этом файле. Есть ли способ сделать это только одной командой? Спасибо!

+0

ли вы читали документацию? https://www.gnu.org/software/wget/manual/wget.html –

+0

Невозможно создать инкрементные имена файлов автоматически. – Barmar

ответ

0

-r сообщает wget, чтобы рекурсивно получить ресурсы от хоста.

-o file сохраняет сообщения журнала в файл вместо стандартной ошибки. Я думаю, что это не то, что вы ищете, я думаю, что это -O file.

-O file сохраняет ресурсы (-ки) в данном файле, а не создает файл в текущем каталоге с именем ресурса. Если он используется вместе с -r, он заставляет wget хранить все ресурсы, связанные с этим файлом.

С wget -r загрузки и хранит более одного файла, воссоздающие дерево файлового сервера в локальной системе, это не имеет никакого смысла, чтобы указать имя один файл для хранения.

Если то, что вы хотите, чтобы переименовать все загруженные файлы в соответствии с шаблоном docX.txt, вы можете сделать это с другой командой после wget имеет конец:

wget -r http.... 

i=1 
while read file 
do 
    mv "$file" "$(dirname "$file")/doc$i.txt" 
    i=$(($i + 1)) 
done < <(find . -type f) 
+1

ok отлично, так как команда wget является подпрограммой программы python, я просто изменю имя файлов после dowload. – Aalto

Смежные вопросы