GNU/Linux >> Tutoriels Linux >  >> Linux

Wget ou des programmes similaires sont-ils toujours disponibles sur les systèmes POSIX ?

Liste officielle des utilitaires POSIX 7

http://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html

Les éléments suivants ne sont pas présent dans la liste :

  • wget
  • boucle
  • ftp

Il en va de même pour le LSB qui ne garantit essentiellement que les utilitaires POSIX.

Mais je pense que le POSIX C est suffisant pour implémenter la plupart de netcat fonctionnalité, c'est donc vraiment une occasion manquée. Ex. :Comment faire une requête HTTP get en C sans libcurl ?

C'est probablement parce que les protocoles réseau comme HTTP étaient jugés trop spécifiques / n'existaient pas à l'époque où POSIX évoluait encore, et POSIX s'est pratiquement figé pour toujours. Notamment, le chiffrement HTTPS n'est probablement pas simple à mettre en œuvre.


Curl est probablement encore plus courant que wget. Au moins dans mon expérience, simplement parce que d'autres outils en dépendent. Mais curl et wget sont une installation super simple et seront disponibles sur n'importe quel système.


Modifier en 2019-11-04 :Je réécris ma réponse pour refléter l'importance de s'assurer qu'un transfert n'est pas altéré pendant le vol. Je laisserai ma réponse originale sous la règle.

Je suggère d'utiliser rsync plus de ssh pour transférer vos fichiers. rsync L'interface de peut sembler écrasante, mais la plupart des utilisateurs peuvent choisir rsync -avzP , et si vous avez besoin de plus de flexibilité, rsync peut s'adapter. Utilisation de ssh assurera l'intégrité, l'authenticité et la confidentialité de votre connexion.

curl est la norme de facto pour les transferts http ; si http ou https sont préférés, curl ou des outils basés sur curl sont probablement un bon choix.

D'après mon expérience, les outils sont disponibles dans cet ordre :

  • wget
  • curl
  • sftp
  • ftp
  • GET (J'utilise HEAD tout le temps et oublie souvent qu'il ne s'agit que d'un outil de la suite)
  • tftp
  • nc (pas aussi courant que je le souhaite)
  • socat (encore moins courant)

Le bash /dev/tcp L'outil est disponible sur la plupart des systèmes que j'ai utilisés (certains utilisaient dash ou pdksh à la place), mais en utilisant echo avec bash , nc , ou socat va très loin pour l'accès HTTP - vous devrez gérer les en-têtes d'une manière ou d'une autre , ce qui réduit son élégance.


gnu awk (gawk) a intégré la gestion TCP même sur les systèmes non Linux http://www.gnu.org/software/gawk/manual/gawkinet/html_node/


Linux
  1. Trucs et astuces pour curl et wget

  2. Sur quels systèmes //foo/bar est-il différent de /foo/bar ?

  3. Pourquoi "wget ​​-r -e Robots=off Http://ccachicago.org" n'agit-il pas de manière récursive ?

  4. Obtenir l'URL finale après la redirection de curl

  5. Comment puis-je faire un HTTP PUT avec Wget ?

Utilisation de Curl pour effectuer des requêtes API REST

Programmes de type MIME

Quel est le plus portable de Sed, Awk, Perl et Sh ?

Quels programmes de maquette d'interface sont disponibles ?

Quelle est la différence entre curl et Wget ?

15 exemples pratiques de commandes Linux cURL (exemples de téléchargement cURL)