NOTE : ce fichier est plus à jour que son équivalent au format Word curl http://bsdnews.com/ > "Nouvelles BSD au `date +%d-%m-%Y`.htm" curl ftp://ftp.apple.com/developer/Technical_Documentation/ curl -O ftp://sunsite.cnlab-switch.ch/mirror/yellowdog/iso/README curl -O "ftp://sunsite.cnlab-switch.ch/mirror/yellowdog/iso/yellowdog-3.0.1-sirius-20031118-install[1-3].iso" curl -O "ftp://iso2.de.NetBSD.org/pub/NetBSD/iso/1.6.2/mac{68k,ppc}cd.iso" curl -O -C - "ftp://iso2.de.NetBSD.org/pub/NetBSD/iso/1.6.2/mac{68k,ppc}cd.iso" curl -T article.rtf -u redacteur:motdepasse ftp://redaction.diablotin.info/articles/svmmac/ curl -T fichier -u carole:secret ftp://serveur/nouveau/ -Q 'MKD nouveau' curl -s 'https://gandi.net/whois?l=FR&domain=diablotin.com' | awk '/^owner-address:/ { print substr ($0, 16) }' curl -A ptitmalin -s -d Amount=50 -d From=EUR -d To=USD http://www.xe.com/ucc/convert.cgi | sed -n 's/^.*\([0-9.]*\) USD<.*$/\1/p' option -v ??? (pour voir comment curl formule ses requêtes POST à l'intention d'un serveur web) curl -I http://formation.diablotin.com/ curl -r 0-2000 http://www.diablotin.com/ curl dict://dict.org/d:BSD:jargon ====== tar cf - DOSSIER_QUELCONQUE | bzip2 -c | split -b 2m - /DOSSIER_DESTINATION/PREFIXE_FICHIERS for fichier in /DOSSIER_DESTINATION/PREFIXE_FICHIERS*; do echo $fichier; curl -T $fichier ftp://diablotin:d020867@diablotin.com/VMS/; done on pourrait utiliser --limit-rate 8K pour conserver de la bande passante MAIS il semble que ça ne marche pas sur Panther (en fait, il génère le message suivant : poll.c:282: failed assertion `pArray != (struct pollfd *) NULL' ET il se limite à envoyer 8K de données) et sinon comment éviter avec curl -T la boucle foreach (la doc intégrée à curl pas plus que le man ne donne de solution) -> à défaut d’avoir une solution directement via curl, on peut utiliser xargs (MAIS IL VAUT MIEUX RESERVER CETTE COMMANDE A UN ARTICLE SUIVANT POUR MONTRER DANS QUELLES CIRCONSTANCES CETTE DERNIERE PEUT SE RENDRE UTILE) voir aussi md5 pour valider le transfert des fichiers "splittés" (dans le détail pour être capable d'identifier UN fichier corrompu qui sera le seul à devoir être renvoyé) voir aussi curl en download et aussi avec la soumission automatique de formulaire (reprendre notamment la conversion de devise vue avec netcat) AUTRES UTILISATIONS : - Téléchargement HTTP de « base » (page quelconque SUR la sortie standard | grep | mail -s INFOS yannick) - Interrogation LDAP sur OS X Serveur ? NON ! - Liste des documents d’un dossier sur un serveur FTP : curl ftp://ftp.apple.com/developer/Technical_Documentation/ - Téléchargement FTP de « masse » (utilisation des REGEXP du type [n-m] – images des CD de la YellowDog) curl -O ftp://iso.fr.netbsd.org/pub/NetBSD/iso/1.6.2/macppccd.iso - Reprise téléchargement interrompu (continuer avec exemple précédent) - Téléchargement depuis FTP NON anonyme (faire un dossier « spécial » sur le site Diablotin) - Soumission formulaire HTTP (méthode POST – reprendre l’exemple du convertisseur de devises de l’article sur Netcat) - Utilisation via un PROXY (intégrer cette option dans un autre exemple – FTP non anonyme par exemple ou variante téléchargement Web de « base ») - Accès HTTP « HEAD » (emploi en supervision par exemple ou en outil de vérification de la cohérence d’un site -> plutôt accès « normal » dans ce dernier cas – plutôt outil pour détecter et prévenir de mises à jour) -I/--head ou -D/--dump-header - Téléchargement d’une page Web depuis un site HTTPS (whois sur Gandi | awk …) curl -s 'https://gandi.net/whois?l=FR&domain=diablotin.com' | awk '/^owner-address:/ { print substr ($0, 16) }' - FTP en UPLOAD - « envoi » (voir début de ce fichier) -u user:passwd - Get a list of a directory of an FTP site: curl ftp://cool.haxx.se/ - Get the definition of curl from a dictionary: curl dict://dict.org/m:curl SURTOUT => curl dict://dict.org/d:genius OU ENCORE curl dict://dict.org/d:Darwin:foldoc OU ENCORE curl dict://dict.org/d:BSD:jargon curl dict://dict.org/show:db - Get the first 100 bytes of a document using FTP: curl -r 0-99 ftp://www.get.this/README curl -r 0-2000 http://www.diablotin.com/ => PEUT ÊTRE PRATIQUE QUAND ON DEVELOPPE UN MOTEUR DE RECHERCHE A LA GOOGLE POUR NE PRENDRE QUE LES PREMIERS OCTETS de pages qui peuvent s'avérer très volumineuses - Upload a local file to get appended to the remote file using ftp: curl -T localfile -a ftp://ftp.upload.com/remotefile ==> A EVITER : cette methode n'est pas fiable car si le transfert est interrompu accidentellement alors le fichier de destination est dans un état qui ne permet probablement plus de l'exploiter (sauf à le tronquer à sa taille précédente, information qu'il aura fallu conserver préalablement) - renommer un ou des fichiers (ou les supprimer) sur un site FTP : curl -O ftp://download.com/coolfile -Q '-DELE coolfile' ESSAYER aussi curl ftp://unsite/ -Q ‘REN srcA dstA’ –Q ‘REN srcB dstB’ - détail de la formulation d’une requête générée par curl avec l’option -v