Je sais que je peux utiliser les 2 commandes suivantes pour télécharger un fichier:
curl -O example.com/file.Zip
wget example.com/file.Zip
Mais je veux qu'ils aillent dans un répertoire spécifique. Je peux donc faire ce qui suit:
curl -o mydir/file.Zip example.com/file.Zip
wget -O mydir/file.Zip example.com/file.Zip
Est-il possible de ne pas avoir à spécifier le nom de fichier? Quelque chose comme ça:
curl -dir mydir example.com/file.Zip
La ligne suivante téléchargera tous les fichiers dans un répertoire que vous avez mentionné.
wget -P /home/test www.xyz.com
Ici, les fichiers seront téléchargés sur /home/test
répertoire
Je sais que c'est une vieille question mais il est possible de faire ce que vous demandez avec curl
rm directory/somefile.Zip
rmdir directory
mkdir directory
curl --http1.1 http://example.com/somefile.Zip --output directory/somefile.Zip
tout d'abord, si cela a été écrit dans un script, vous devez vous assurer que le fichier s'il existe déjà est supprimé, puis supprimer le répertoire, puis boucler le téléchargement. Sinon, curl échouera avec un fichier et le répertoire existe déjà.
Le moyen le plus simple est de cd
dans un sous-shell
(cd somedir; wget example.com/file.Zip)
et vous pourriez en faire une fonction Shell (par exemple, dans votre ~/.bashrc
)
wgetinside() {
( cd $1 ; shift; wget $* )
}
puis tapez wgetinside somedir http://example.com/file.Zip
La réponse courte est non car curl et wget écrit automatiquement dans STDOUT. Aucune option n'est intégrée pour placer le fichier téléchargé dans un répertoire.
-o/--output <file> Write output to <file> instead of stdout (Curl)
-O, --output-document=FILE write documents to FILE. (WGet)
Mais comme il sort nativement vers STDOUT, il vous donne des solutions de programmation telles que:
i="YOURURL"; f=$(awk -F'/' '{print $NF}' <<< $i);curl $i > ~/$f
Le premier je définirai votre URL (example.com/file.Zip) comme une variable. La partie f = a supprimé l'URL et a laissé /file.Zip, puis vous avez bouclé le fichier ($ i) dans le répertoire (~) en tant que nom de fichier.