GNU/Linux >> Tutoriels Linux >  >> Linux

Comment obtenir un fichier avec un nom correct lors de la redirection ?

-O file
--output-document=file
   

Les documents ne seront pas écrits dans les fichiers appropriés, mais tous seront concaténés et écrits dans un fichier. Si - est utilisé comme fichier, les documents seront imprimés sur la sortie standard, ce qui désactivera la conversion des liens. (Utilisez ./- pour imprimer dans un fichier nommé littéralement -. )

Alors,

wget -O somefile.extension 'http://www.vim.org/scripts/download_script.php?src_id=9750'

Ou, vous pourrez peut-être obtenir wget à automatiquement utiliser le nom de fichier proposé par le serveur en utilisant le --content-disposition option si prise en charge par votre version.

wget --content-disposition 'http://www.vim.org/scripts/download_script.php?src_id=9750'

Mises en garde selon la page de manuel,

--content-disposition

Si cette option est activée, la prise en charge expérimentale (pas entièrement fonctionnelle) des en-têtes "Content-Disposition" est activée. Cela peut actuellement entraîner des allers-retours supplémentaires vers le serveur pour une requête "HEAD", et est connu pour souffrir de quelques bogues, c'est pourquoi il n'est actuellement pas activé par défaut.

Cette option est utile pour certains programmes CGI de téléchargement de fichiers qui utilisent des en-têtes "Content-Disposition" pour décrire le nom d'un fichier téléchargé.

Vous pouvez obtenir le même comportement automatisé avec curl , en utilisant,

curl -JLO 'http://www.vim.org/scripts/download_script.php?src_id=9750'

-O utilise le nom distant, et -J force le -O pour obtenir ce nom à partir de l'en-tête de disposition de contenu plutôt que de l'URL, et -L suit les redirections si nécessaire.


Avec wget, vous pouvez faire ceci :

wget --trust-server-names <url> 

pour enregistrer le fichier en utilisant le dernier nom de fichier que le serveur vous donne.


Vous pouvez également utiliser aria2c - cela semble bien fonctionner avec les en-têtes Content-Disposition.


Linux
  1. Comment ouvrir un fichier .8 avec Man ?

  2. Comment écrire un fichier avec C sous Linux ?

  3. Comment obtenir uniquement le nom de fichier avec Linux 'find'?

  4. wget :nom du fichier téléchargé

  5. Quand un fichier créé avec mkstemp() est supprimé ?

Comment déployer une application multiniveau avec Kubernetes

Comment utiliser la commande Linux rm avec des exemples

Comment réparer une erreur de conversion avec Calibre

Comment télécharger des fichiers avec la commande Wget sous Linux

Comment obtenir le lien du fichier à télécharger avec Wget ?

Comment supprimer les fichiers .fuse_hidden* ?