Eu preciso que os arquivos sejam baixados para / tmp / cron_test /. Meu código wget é
wget --random-wait -r -p -nd -e robots=off -A".pdf" -U mozilla http://math.stanford.edu/undergrad/
Então, existe algum parâmetro para especificar o diretório?
Eu preciso que os arquivos sejam baixados para / tmp / cron_test /. Meu código wget é
wget --random-wait -r -p -nd -e robots=off -A".pdf" -U mozilla http://math.stanford.edu/undergrad/
Então, existe algum parâmetro para especificar o diretório?
Respostas:
Na página do manual:
-P prefix
--directory-prefix=prefix
Set directory prefix to prefix. The directory prefix is the
directory where all other files and sub-directories will be
saved to, i.e. the top of the retrieval tree. The default
is . (the current directory).
Portanto, você precisa adicionar -P /tmp/cron_test/
(formato abreviado) ou --directory-prefix=/tmp/cron_test/
(formulário longo) ao seu comando. Observe também que, se o diretório não existir, ele será criado.
--no-host-directories
ou -nH
como por serverfault.com/questions/354792/...
-O é a opção para especificar o caminho do arquivo para o qual você deseja baixar.
wget <file.ext> -O /path/to/folder/file.ext
-P é o prefixo em que ele fará o download do arquivo no diretório
wget <file.ext> -P /path/to/folder
/path/to/folder/
lá
-O
que eu não precisava, mas me fez sentir mais confiante de que -P
era disso que eu precisava.
-O
substitui -P
, então você não pode especificar apenas o diretório de saída (think dirname
e apenas o nome do arquivo de saída (think basename
). Para esse uso, basta -O
especificar o caminho completo do arquivo.)
Verifique se o URL está correto para o que você está baixando. Antes de tudo, URLs com caracteres semelhantes ?
e não podem ser analisados e resolvidos. Isso confundirá a linha de cmd e aceitará os caracteres que não forem resolvidos no nome do URL de origem como o nome do arquivo no qual você está baixando.
Por exemplo:
wget "sourceforge.net/projects/ebosse/files/latest/download?source=typ_redirect"
fará o download em um arquivo chamado ?source=typ_redirect
,.
Como você pode ver, saber uma coisa ou duas sobre URLs ajuda a entender wget
.
Estou inicializando a partir de um disco hirens e só tinha o Linux 2.6.1 como um recurso (o sistema operacional de importação não está disponível). A sintaxe correta que resolveu meu problema ao baixar um ISO no disco rígido físico foi:
wget "(source url)" -O (directory where HD was mounted)/isofile.iso"
Pode-se descobrir a URL correta, localizando em que ponto o wget
download é feito em um arquivo chamado index.html
(o arquivo padrão) e possui o tamanho correto / outros atributos do arquivo que você precisa, mostrado pelo seguinte comando:
wget "(source url)"
Depois que o URL e o arquivo de origem estiverem corretos e estiverem sendo baixados index.html
, você poderá interromper o download ( ctrl+ z) e alterar o arquivo de saída usando:
-O "<specified download directory>/filename.extension"
após o URL de origem.
No meu caso, isso resulta no download de um ISO e armazená-lo como um arquivo binário isofile.iso
, o que é possível montar.
"-P" é a opção certa, continue lendo para obter mais informações relacionadas:
wget -nd -np -P / dest / dir --recursivo http: // url / dir1 / dir2
Trechos relevantes das páginas de manual por conveniência:
-P prefix
--directory-prefix=prefix
Set directory prefix to prefix. The directory prefix is the directory where all other files and subdirectories will be saved to, i.e. the top of the retrieval tree. The default is . (the current directory).
-nd
--no-directories
Do not create a hierarchy of directories when retrieving recursively. With this option turned on, all files will get saved to the current directory, without clobbering (if a name shows up more than once, the
filenames will get extensions .n).
-np
--no-parent
Do not ever ascend to the parent directory when retrieving recursively. This is a useful option, since it guarantees that only the files below a certain hierarchy will be downloaded.
man wget: -O arquivo --output-document = file
wget "url" -O /tmp/cron_test/<file>