V
e
r

l
i
s
t
a
d
o

tractatus@lapipaplena:/# _

 

curl

Herramienta para la transferencia de datos desde o hacia un servidor. Permite los protocolos ftp, https, sftp, scp, tftp ...

$ curl ftp://host
Sin ninguna opción obtiene la páquina principal del host [http, ftp...
$ curl ftp://host/ http://host/
Descargar dos host simultaneos
$ curl -o destino http://host
Guarda el host en destino
$ curl -i URL
información sobre una URL
$ curl -I URL
extraer todas las cabeceras
$ curl -o portada.png http://www.lapipaplena.net/wp-content/uploads/2012/08/meditate1.png
descargar una imagen y guardarla
$ curl -u usuario:contraseña http://localhost/restringido/
Acceder a una zona que requiera autentificación
$ curl ftp://usuario:contraseña@host:puerto/home/usuario/archivo
Otra forma de autentificación
$ curl -T archivo_local ftp://host/carpeta
Subir un archivo local a un host remoto
$ curl -T archivo_local -a ftp://host/
Subir un archivo local a un host remoto con el parámetro -a
$ curl -x proxy:8889 ftp://host
Obtener un host utilizando un proxy
$ curl -u usuario:contraseña -x proxy:8888 http://host
Usando proxy y con autentificación
$ curl -U usuario:contraseña -x proxy:8888 http://host
Cuando el proxy requiere autentificación especial
$ curl -r 0-99 http://host
Obtener los primeros 100 bytes del documento
$ curl -r -500 http://host
Obtener los últimos 500 bytes del documento
$ curl --proxytunnel -x proxy:8888 -T archivo_local ftp ftp://host
Usando un tunel
$ curl -v ftp://host
Ver información que se envia y recibe pero no los datos reales
$ curl --trace trace.txt host
Obtener más información y guardar en trace.txt
$ curl --dump-header headers.txt host
Guardar las cabeceras [cookies] en headers.txt
$ curl -b headers.txt www.example.com
Pasar las cabeceras obtenidas a un host
$ curl -e www.bueno.com http://host/
Intentar engañar un site con una dirección falsa
$ curl -A 'Mozilla/3.0 (Win95; I)' http://host
Intentar engañar un site especificando otro navegador
$ curl --limit-rate 10K host
Limitar la velocidad de transferencia a 10 kilobytes
$ curl -P 192.168.0.10 ftp host
Acceder a un host a partir de una ip a la que si tenemos acceso
$ curl -C - -o descarga hots
Proseguir una descarga interrumpida
$ curl -z local.html hots/remote.html
Sólo se efectuará la descarga si remote.html es más reciente que local.html

Otras opciones:

$ curl -Is google.com | grep Date
Conocer la fecha via web
$ curl ipinfo.io/183.61.164.202
Conocer datos de una ip
$ curl icanhazip.com
Conocer la IP externa
$ curl ifconfig.me
lo mismo
$ curl -u usuario:clave --silent "https://mail.google.com/mail/feed/atom" | perl -ne 'print "\t" if /<name>/; print "$2\n" if /<(title|name)>(.*)<\/\1>/;'
visualizar todos los mensajes no leidos de gmail
$ curl -s 'http://geoiplookup.wikimedia.org/' | sed 's/^.*=\s*//' | python3 -mjson.tool
muestra la situación geográfica
$ curl -s http://geoiplookup.wikimedia.org/ | python3 -c 'import sys, json, string, webbrowser; webbrowser.open(string.Template("http://maps.google.com/maps?q=$lat,$lon").substitute(json.loads(sys.stdin.read().split("=")[-1])))'
Lo mismo pero abriendo una pestaña en el navegador
$ curl -s http://www.census.gov/popclock/data/population/world | awk -F'[:,]' '{print $7}'
Muestra el número de habitantes de la tierra
$ curl -s https://help.github.com/articles/generating-ssh-keys | grep -Po --color=never "RSA key fingerprint is (:?[A-z0-9]\:?){32}"
Imprime la clave RSA de github.com
$ curl -s -w 'Test de velocidad para :%{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null http://www.google.com
Tiempo de respuesta de un sitio web. Cambiar la url final
Navegando por staredsi.eu aceptas las cookies que utilizamos en esta web. Más información: Ver política de cookies
[0] 0:bash*
2584 entradas - Acerca del Tractatus
La Pipa Plena 2024