Commande wget pour télécharger un fichier et l'enregistrer sous un nom de fichier différent

526

Je télécharge un fichier à l'aide de la wgetcommande. Mais quand il se télécharge sur ma machine locale, je veux qu'il soit enregistré sous un nom de fichier différent.

Par exemple: je télécharge un fichier depuis www.examplesite.com/textfile.txt

Je souhaite utiliser wgetpour enregistrer le fichier textfile.txtsur mon répertoire local sous newfile.txt. J'utilise la wgetcommande comme suit:

wget www.examplesite.com/textfile.txt
noobcoder
la source
41
Ça l'est wget -O newfile.txt.
Escargot mécanique
mais wget -o vous donnera simplement la progression du téléchargement en tant que fichier journal. J'ai essayé wget -o.
noobcoder
25
wget -oaffichera les informations du journal dans un fichier. wget -Oaffichera le contenu téléchargé. man wgetvous dira tout cela et plus encore.
Andy Ross
2
Ce que @AndyRoss a dit: attention à la capitalisation; c'est généralement SIGNIFICATIF en terre unix / linux.
tink
1
Cela ne répond pas du tout à la question. La SORTIE de la commande sera enregistrée dans un fichier -o, mais le fichier lui-même sera téléchargé avec le même nom et non "enregistré sous".
John Mikic

Réponses:

825

Utilisez l' -O fileoption.

Par exemple

wget google.com
...
16:07:52 (538.47 MB/s) - `index.html' saved [10728]

contre.

wget -O foo.html google.com
...
16:08:00 (1.57 MB/s) - `foo.html' saved [10728]
naumcho
la source
1
assurez-vous également d'exécuter la console en mode administrateur
BraveNewMath
22
Les pages de manuel révèlent: "L'utilisation de -O ne signifie pas simplement" utiliser le fichier de nom au lieu de celui de l'URL; " elle est plutôt analogue à la redirection du shell: wget -O file http://fooest destinée à fonctionner comme wget -O - http://foo > file: le fichier sera tronqué immédiatement et tout le contenu téléchargé y sera écrit. "
1
Comment ajouter à foo.html au lieu de l'écraser?
Craig Jacobs
4
@CraigJacobs vous pouvez sortir wgetdans la console et l'ajouter au fichier. Par exemple wget -O - -o /dev/null http://google.com >> foo.html. Référence
Deepak Chaudhary
1
Cette commande ne créera pas le fichier si le répertoire n'existe pas auparavant
Freedo
93

Notez également l'ordre des paramètres sur la ligne de commande. Au moins sur certains systèmes (par exemple CentOS 6):

wget -O FILE URL

travaux. Mais:

wget URL -O FILE

ne marche pas.

mousomer
la source
24

Vous utiliseriez la commande Escargot mécanique répertoriée. Notez que la ligne de commande O majuscule à utiliser pourrait être:

wget www.examplesite.com/textfile.txt --output-document=newfile.txt

ou

wget www.examplesite.com/textfile.txt -O newfile.txt

J'espère que cela pourra aider.

ioMatrix
la source
8

En utilisant CentOS Linux, j'ai trouvé que la syntaxe la plus simple serait:

wget "link" -O file.ext

"link"est l'adresse Web que vous souhaitez enregistrer et "file.ext"le nom de fichier et l'extension de votre choix.

ZenkyGt
la source
2
wget -O yourfilename.zip remote-storage.url/theirfilename.zip

fera l'affaire pour vous.

Remarque:

a) c'est un O majuscule.

b) wget -O filename urlne fonctionnera que. Mettre la -Odernière ne sera pas.

Lakshman Pilaka
la source