curl |
Client URL |
---|---|
Linux | Externe |
Syntaxe
curl [options] [URL...] |
Description
Cette commande permet de transférer des données vers ou d'un serveur en utilisant un des protocoles supportés (HTTP, HTTPS, FTP, FTPS, TFTP, DICT, TELNET, LDAP ou FILE).
Remarques
- En langage de programmation PHP, il existe le module d'extension CURL ainsi que de nombreuses fonctions (CURL_CLOSE, CURL_EXEC, CURL_GETINFO, CURL_INIT, CURL_SETOPT, CURL_VERSION,...) permettant d'effectuer des manipulations plus précises que cette commande.
- En langage de programmation Perl, il existe le module «WWW::Curl» permettant d'effectuer des manipulations plus précises que cette commande.
- Cette commande peut être fort utile afin de tester qu'une communication de service Web est réellement possible entre deux serveurs aux accès restreint.
- En langage de programmation C pour Linux, il existe une bibliothèque «curl/curl.h» ainsi que de nombreuses fonctions ( CURL_EASY_CLEANUP, CURL_EASY_DUPHANDLE, CURL_EASY_ESCAPE, CURL_ESCAPE, CURL_FREE, CURL_GETDATE, CURL_GETENV, CURL_GLOBAL_CLEANUP, CURL_GLOBAL_INIT, CURL_GLOBAL_INIT_MEM, CURL_MPRINTF, CURL_MFPRINTF, CURL_MSPRINTF, CURL_MULTI_INIT, CURL_MVFPRINTF, CURL_MVPRINTF, CURL_UNESCAPE, CURL_VERSION, CURL_VERSION_INFO, ,...) permettant d'effectuer des manipulations plus précises que cette commande.
Exemples
L'exemple suivant permet de vérifier de façon brute si le serveur «memcache01.mondomaine.com» de «memcached» répond :
curl telnet://memcache01.mondomaine.com:11211 |
Ensuite on tape la commande :
statsENTER |
on obtiendra un résultat semblable suivant s'il répond (sinon il ne retournera rien) :
STAT pid 3584 STAT uptime 3068522 STAT time 1385139252 STAT version 1.4.3 STAT pointer_size 64 STAT rusage_user 84.157206 STAT rusage_system 68.807539 STAT curr_connections 5 STAT total_connections 7 STAT connection_structures 6 STAT cmd_get 0 STAT cmd_set 0 STAT cmd_flush 0 STAT get_hits 0 STAT get_misses 0 STAT delete_misses 0 STAT delete_hits 0 STAT incr_misses 0 STAT incr_hits 0 STAT decr_misses 0 STAT decr_hits 0 STAT cas_misses 0 STAT cas_hits 0 STAT cas_badval 0 STAT auth_cmds 0 STAT auth_errors 0 STAT bytes_read 12 STAT bytes_written 773 STAT limit_maxbytes 1073741824 STAT accepting_conns 1 STAT listen_disabled_num 0 STAT threads 4 STAT conn_yields 0 STAT bytes 0 STAT curr_items |
L'exemple suivant permet de vider le cache de memcached :
curl telnet://serveur:11211 |
Ensuite on tape :
flush_allEnter |
On reçoit la réponse du serveur
OK |
Ensuite on tape une deuxième fois la même commande :
flush_allEnter |
On reçoit la réponse du serveur
OK |
Finalement, on termine la communication :
quitEnter |
L'exemple suivant permet d'afficher le IP publique qu'utilise mon serveur de l'Internet :
curl ifconfig.me |
on obtiendra un résultat semblable à ceci :
55.44.33.22 |
Voir également
Système d'exploitation - Linux - Références de commandes et de programmes - wget