Comando curl de Linux

comando curl

La rizo El comando transfiere datos hacia o desde un servidor de red, utilizando uno de los protocolos ( HTTP, HTTPS , FTP , FTPS, SCP , SFTP , TFTP, DICT, TELNET , LDAP o ARCHIVO). Está diseñado para funcionar sin la interacción del usuario, por lo que es ideal para su uso en un caparazón. texto .

El software ofrece apoderado soporte, autenticación de usuario, FTP subiendo , Publicación HTTP, conexiones SSL, galletas , curriculum vitae de transferencia de archivos, metalink y otras características.



Sintaxis

|_+_|

Opciones

-a , --adjuntar ( FTP / SFTP ) Cuando se utiliza en un FTP subir , esto dirá rizo para agregar al archivo de destino en lugar de sobrescribirlo. Si el archivo no existe, se crea.

Tenga en cuenta que algunos servidores SSH, incluido OpenSSH, ignoran esta opción.
-A , --agente de usuario ( HTTP ) Especifica el Agente de usuario cuerda para enviar al servidor HTTP. Algunos CGI falla si la cadena del agente no está establecida en ' Mozilla / 4.0 '. Para codificar espacios en blanco en la cadena, rodee la cadena con comillas simples.

Este valor también se puede configurar con el -H / --encabezamiento opción.

Si esta opción se configura más de una vez, la última será la que se use.
--anyauth ( HTTP ) Dice rizo para descubrir el método de autenticación por sí mismo y utilizar el método más seguro que el sitio remoto afirma que admite. Esto se hace primero haciendo una solicitud y verificando los encabezados de respuesta, lo que posiblemente induzca un viaje de ida y vuelta a la red. Esto se usa en lugar de configurar un método de autenticación específico, que puede hacer con --básico , --digerir , --ntlm , y --negociar .

Tenga en cuenta que el uso de --anyauth no se recomienda si lo hace cargas de stdin ya que puede requerir que los datos se envíen dos veces y luego el cliente debe poder rebobinar. Si surge la necesidad al cargar desde stdin, la operación de carga falla.
-b , --Galleta = datos> ( HTTP ) Pasar los datos al servidor HTTP como Galleta . Se espera que los datos recibidos previamente del servidor en un ' Conjunto de cookies: ' línea. Los datos deben tener el formato ' NOMBRE1 = VALOR1; NOMBRE2 = VALOR2 '.

Si no ' = '(igual) carácter se utiliza en la línea, se trata como un Nombre del archivo para usar para leer líneas de cookies almacenadas previamente, que deben usarse en esta sesión si coinciden. El uso de este método también activa el 'analizador de cookies' que hace que curl registre las cookies entrantes también, lo que puede ser útil si lo usa en combinación con el --localización opción. El formato de archivo del archivo para leer las cookies debe ser encabezados HTTP simples o el formato de archivo de cookies de Netscape / Mozilla.

NOTA: el archivo especificado con -b / --Galleta solo se usa como aporte . No se almacenarán cookies en el archivo. Para almacenar cookies, use el -c / --tarro de las galletas opción, o puede guardar los encabezados HTTP en un archivo usando -D / --dump-header .

Si esta opción se establece más de una vez, la última aparición será la opción que se utilice.
-B , --use-ascii ( FTP / LDAP ) Habilite la transferencia ASCII. Para FTP , esto también se puede aplicar mediante una URL que termine con ' ; Tipo = A '. Esta opción hace que los datos enviados a stdout estén en modo de texto para win32 sistemas.

Si esta opción se usa dos veces, la segunda deshabilita el uso de ASCII.
--básico ( HTTP ) Dice rizo para utilizar la autenticación HTTP básica. Este es el valor predeterminado y esta opción generalmente no tiene sentido, a menos que la use para anular una opción configurada previamente que establece un método de autenticación diferente (como --ntlm , --digerir y --negociar ).
--cifrados ( SSL ) Especifica qué cifrados se utilizarán en la conexión. Los cifrados enumerados deben ser válidos. Puede leer los detalles de la lista de cifrado SSL en openssl.org .

Los cifrados NSS se realizan de forma diferente a OpenSSL y GnuTLS. La lista completa de cifrados NSS se encuentra en la entrada NSSCipherSuite en esta URL: https://pagure.io/mod_nss#Directives .

Si esta opción se usa varias veces, la última anula a las demás.
--comprimido ( HTTP ) Solicite una respuesta comprimida utilizando uno de los algoritmos rizo admite y devuelve el documento sin comprimir. Si se utiliza esta opción y el servidor envía una codificación no admitida, Curl informará un error.
--connect-timeout Tiempo máximo en segundos que puede tardar la conexión al servidor. Esto solo limita la fase de conexión; una vez que curl se ha conectado, esta opción ya no se aplica. Desde 7.32.0, esta opción acepta valores decimales, pero el tiempo de espera real disminuye en precisión a medida que el tiempo de espera especificado aumenta en precisión decimal. Ver también el -metro / --máx-tiempo opción.

Si esta opción se usa varias veces, se usará la última.
-c , --tarro de las galletas ( HTTP ) Especifique qué archivo desea rizo para escribir todas las cookies después de una operación completa. Curl escribe todas las cookies leídas previamente de un archivo específico y todas las cookies recibidas de servidores remotos. Si no se conocen cookies, no se escribirá ningún archivo. El archivo se escribirá utilizando el formato de archivo de cookies de Netscape. Si establece el nombre del archivo en un solo guión (' - '), las cookies se escribirán en stdout.

Esta opción de línea de comando activa el motor de cookies que hace rizo registrar y utilizar cookies. Otra forma de activarlo es usar el -b / - opción de galleta .

NOTA: Si no se puede crear o escribir en el tarro de cookies, toda la operación de curl no fallará ni reportará un error. Si -v Cuando se especifica, se muestra una advertencia, pero esa es la única respuesta visible que recibe sobre esta situación posiblemente fatal.

Si esta opción se usa varias veces, se usará el último nombre de archivo especificado.
-C , --continuar Continuar / Reanudar una transferencia de archivo anterior en el compensar . El desplazamiento dado es el número exacto de bytes que se omitirán, contados desde el principio del archivo de origen antes de que se transfiera al destino. Si se usa con cargas, curl no usa el comando del servidor ftp SIZE.

Usar ' -C - 'para decirle a curl que averigüe automáticamente dónde / cómo reanudar la transferencia. Luego usa los archivos de entrada / salida dados para averiguarlo.

Si esta opción se usa varias veces, se usará la última.
--create-dirs Cuando se usa junto con el -o opción, rizo crea el local necesario directorio jerarquía según sea necesario. Esta opción crea los directorios mencionados con el -o opción, nada más. Si el -o El nombre del archivo no utiliza ningún directorio o si los directorios que menciona ya existen, no se crean directorios.

Para crear directorios remotos al usar FTP o SFTP, intente --ftp-crear-directorios .
--crlf ( FTP ) Convertir LF a CRLF en carga. Útil para MVS (OS / 390).
--crlfile ( HTTPS / FTPS ) Proporcione un archivo en formato PEM con una lista de revocación de certificados que pueda especificar los certificados de pares que se considerarán revocados.

Si esta opción se usa varias veces, se usará la última.

(Agregado en 7.19.7)
-D , --datos ( HTTP ) Envía los datos especificados en un CORREO solicitud al servidor HTTP, de una manera que emula como si un usuario hubiera completado un formulario HTML y hubiera presionado el botón enviar. Tenga en cuenta que los datos se envían exactamente como se especifica sin procesamiento adicional (con todos nuevas líneas cortar). Se espera que los datos estén 'codificados en URL'. Esto causa rizo para pasar los datos al servidor usando el tipo de contenido application / x-www-form-urlencoded . Comparar con -F / --formulario . Si esta opción se usa más de una vez en el mismo línea de comando , las piezas de datos especificadas se fusionarán con un separador ' & ' personaje. Por lo tanto, usando '-d nombre = daniel -d habilidad = pésimo' generaría un fragmento POST que se parece a 'nombre = daniel & habilidad = pésimo' .

Si comienza los datos con el ' @ ', el resto debe ser un nombre de archivo para leer los datos, o' - '(guión) si desea que curl lea los datos de stdin. El contenido del archivo ya debe estar codificado en URL. También se pueden especificar varios archivos. Por lo tanto, publicar datos de un archivo llamado 'foobar' se haría con ' --data @ foo-bar '.

-D / --datos es lo mismo que --data-ascii . Para publicar datos puramente binario , utilizar el --data-binary opción. Para codificar en URL el valor de un campo de formulario, puede usar --data-urlencode .

Si esta opción se usa varias veces, las que siguen a la primera agregarán datos.
--data-ascii ( HTTP ) Este es un alias para -D / --datos opción.

Si esta opción se usa varias veces, las que siguen a la primera agregarán datos.
--data-binary ( HTTP ) Esto publica los datos exactamente como se especifica sin ningún procesamiento adicional.

Si comienza los datos con el carácter @ , el resto debe ser un nombre de archivo. Los datos se publican de manera similar a --data-ascii lo hace, excepto que las nuevas líneas se conservan y las conversiones nunca se realizan.
Si esta opción se usa varias veces, las que siguen a la primera agregarán datos como se describe en -D , --datos .
--data-urlencode ( HTTP ) Esto publica datos, similar a las otras opciones de --data con la excepción de que realiza la codificación de URL. (Agregado en 7.18.0)

Para ser compatible con CGI, el parte debe comenzar con un nombre seguido de un separador y una especificación de contenido. La parte se puede pasar a rizo utilizando una de las siguientes sintaxis:

contenido

Esto hace que curl codifique en URL el contenido y lo transmita. Solo tenga cuidado de que el contenido no contenga = o @ símbolos, ya que eso hará que la sintaxis coincida con uno de los otros casos a continuación.

= contenido

Esto hace que curl codifique en URL el contenido y lo transmita. El precedente = El símbolo no está incluido en los datos.

nombre = contenido

Esto hace que curl codifique en URL la parte del contenido y la transmita. Tenga en cuenta que se espera que la parte del nombre ya esté codificada en URL.

@Nombre del archivo

Esto hace que curl cargue datos desde el archivo dado (incluyendo cualquier nueva línea), codifique en URL esos datos y los pase en el POST.

[correo electrónico protegido]

Esto hace que curl cargue datos desde el archivo dado (incluyendo cualquier nueva línea), codifique en URL esos datos y los pase en el POST. La parte del nombre obtiene un signo igual agregado, lo que resulta en nombre = contenido-archivo-codificado-urlen . Tenga en cuenta que se espera que el nombre ya esté codificado en URL.
--delegación NIVEL Colocar NIVEL para decirle al servidor lo que puede delegar con las credenciales de usuario. Usado con GSS / kerberos.

ninguno

No permita ninguna delegación.

política

Delega si y solo si el indicador OK-AS-DELEGATE está configurado en el vale de servicio Kerberos, que es una cuestión de política de dominio.

siempre

Permitir incondicionalmente que el servidor delegue.
--digerir ( HTTP ) Habilita la autenticación HTTP Digest. Esta es una autenticación que evita contraseña se envíe como texto sin cifrar. Use esto en combinación con el normal -u / --usuario opción para configurar nombre de usuario y contraseña. Ver también --ntlm , --negociar y --anyauth para opciones relacionadas.

Si esta opción se usa varias veces, las siguientes ocurrencias no hacen ninguna diferencia.
--disable-eprt ( FTP ) Contar rizo para deshabilitar el uso de los comandos EPRT y LPRT al realizar transferencias FTP activas. Curl normalmente siempre intentará primero usar EPRT, luego LPRT antes de usar PORT, pero con esta opción, usa PORT de inmediato. EPRT y LPRT son extensiones del protocolo FTP original, es posible que no funcionen en todos los servidores, pero permiten una mayor funcionalidad de una mejor manera que el comando PORT tradicional.

--eprt puede habilitar explícitamente EPRT de nuevo y --no-eprt es un alias para --disable-eprt .

La desactivación de EPRT solo cambia el comportamiento activo. Si desea cambiar al modo pasivo, no debe usar -PAG , --puerto ftp o forzarlo con --ftp-pasv .
--disable-epsv ( FTP ) Contar rizo para deshabilitar el uso del comando EPSV al realizar transferencias FTP pasivas. Normalmente, Curl siempre intentará primero utilizar EPSV antes que PASV, pero con esta opción, no intentará utilizar EPSV.

--epsv puede habilitar explícitamente EPSV de nuevo y --no-epsv es un alias para --disable-epsv .

La desactivación de EPSV solo cambia el comportamiento pasivo. Si desea cambiar al modo activo, debe usar -PAG , --puerto ftp .
-D , --dump-header Escribe los encabezados del protocolo en el archivo especificado.

Esta opción es útil cuando desea almacenar los encabezados que le envía un sitio HTTP. Las cookies de los encabezados se podrían leer en un segundo rizo invocar usando el -b / --Galleta opción. sin embargo, el -c / --tarro de las galletas La opción es una mejor forma de almacenar cookies.

Cuando se usa en FTP, las líneas de respuesta del servidor ftp se consideran 'encabezados' y, por lo tanto, se guardan allí.

Si esta opción se usa varias veces, se usa la última.
-es , --referer ( HTTP ) Envía la información de la 'Página de referencia' al servidor HTTP. Esto también se puede configurar con el -H / --encabezamiento . Cuando se usa con -L / --localización , puedes agregar ' ;auto ' hacia --referer URL para hacer rizo establece automáticamente la URL anterior cuando sigue una Localización: encabezamiento. La ' ;auto 'la cadena se puede usar sola, incluso si no establece una inicial --referer .

Si esta opción se usa varias veces, se usará la última.
--motor Seleccione el motor de cifrado OpenSSL que se utilizará para las operaciones de cifrado. Usar - lista de motores para imprimir una lista de motores admitidos en tiempo de compilación. Tenga en cuenta que es posible que no todos (o ninguno) de los motores estén disponibles en tiempo de ejecución.
--ambiente ( SÓLO RISC OS ) Establece un rango de Variables de entorno , usando los nombres de -en opciones de soporte, para permitir más fácilmente la extracción de información útil después de haber ejecutado rizo .
- archivo egd ( HTTPS ) Especifica el camino nombre al demonio de recolección de entropía enchufe . El socket se utiliza para inicializar el motor aleatorio para conexiones SSL. Ver también el --archivo aleatorio opción.
-ES , --cert
< certificado
[ : contraseña ]>
( SSL ) Dice rizo para utilizar el archivo de certificado de cliente especificado al obtener un archivo con HTTPS, FTPS u otro protocolo basado en SSL. El certificado debe estar en formato PEM. Si no se especifica la contraseña opcional, se consultará en el terminal. Tenga en cuenta que esta opción asume un archivo de 'certificado' que es la clave privada y el certificado privado concatenados. Ver --cert y --clave para especificarlos de forma independiente.

Si rizo está construido contra la biblioteca NSS SSL, entonces esta opción puede indicar rizo el apodo del certificado que se utilizará en la base de datos NSS definida por la variable de entorno SSL_DIR (o por defecto / etc / pki / nssdb ). Si el módulo NSS PEM PKCS # 11 (libnsspem.so) está disponible, es posible que se carguen los archivos PEM. Si desea utilizar un archivo del directorio actual, antepóngalo con ' ./ 'prefijo, para evitar confusiones con un apodo. Si el apodo contiene ' : ', debe ir precedido de' 'para que no se reconozca como delimitador de contraseña. Si el apodo contiene ' ', debe escaparse como' \ 'para que no se reconozca como un carácter de escape.

( Solo iOS y Mac OS X ) Si rizo está construido contra el transporte seguro, entonces la cadena del certificado debe coincidir con el nombre de un certificado que se encuentra en el sistema o en el llavero del usuario. La clave privada correspondiente al certificado y la cadena de certificados (si la hubiera) también deben estar presentes en el llavero.

Si esta opción se usa varias veces, se usará la última.
- tipo de concierto ( SSL ) Dice rizo el tipo de certificado tipo del certificado proporcionado. PEM , LA y ENG son reconocidos tipos . Si no se especifica, se asume PEM.

Si esta opción se usa varias veces, se usará la última.
--cacert
( SSL ) Dice rizo para utilizar el archivo de certificado especificado para verificar el par. El archivo puede contener varios certificados de CA. Los certificados deben estar en formato PEM. Normalmente, curl está diseñado para usar un archivo predeterminado para esto, por lo que esta opción se usa para modificar ese archivo predeterminado.

rizo reconoce la variable de entorno llamada ' CURL_CA_BUNDLE 'si está configurado, y usa la ruta dada como ruta a un paquete de certificados de CA. Esta opción anula esa variable.

La Ventanas versión de rizo busca automáticamente un archivo de certificados de CA llamado ' curl-ca-bundle.crt ', ya sea en el mismo directorio que curl.exe , o en el directorio de trabajo actual, o en cualquier carpeta a lo largo de su RUTA.

Si rizo está construido contra la biblioteca NSS SSL, el módulo NSS PEM PKCS # 11 (libnsspem.so) debe estar disponible para que esta opción funcione correctamente.

Si esta opción se usa varias veces, se usará la última.
--capacidad
directorio>
( SSL ) Dice rizo para utilizar el directorio de certificados especificado para verificar el par. Los certificados deben estar en formato PEM y el directorio debe procesarse utilizando el c_rehash utilidad suministrada con openssl. Utilizando --capacidad puede permitir rizo para hacer conexiones https de manera mucho más eficiente que usar --cacert Si el --cacert El archivo contiene muchos certificados CA.

Si esta opción se usa varias veces, se usará la última.
-F , --fallar ( HTTP ) Fallar silenciosamente (sin salida) en errores del servidor. Esto se hace principalmente para habilitar mejor los scripts, etc. para tratar mejor los intentos fallidos. En casos normales, cuando un servidor HTTP no puede entregar un documento, devuelve un documento HTML indicándolo (que a menudo también describe el motivo). Esta bandera previene rizo de generar eso y devolver el error 22.

Este método no es a prueba de fallas y hay ocasiones en las que los códigos de respuesta fallidos se filtrarán, especialmente cuando se trata de autenticación (códigos de respuesta 401 y 407).
--cuenta ftp [ datos ] ( FTP ) Cuando un servidor FTP solicita 'datos de cuenta' después de proporcionar el nombre de usuario y la contraseña, estos datos se envían mediante el CUENTA mando. (Agregado en 7.13.0)

Si esta opción se usa dos veces, la segunda anula el uso anterior.
--ftp-crear-directorios ( FTP / SFTP ) Cuando una operación / URL de FTP utiliza una ruta que no existe actualmente en el servidor, el comportamiento estándar de curl es fallar. Usando esta opción, rizo en su lugar, intentará crear directorios faltantes.
- método ftp [ método ] ( FTP ) Controle qué método debe usar curl para acceder a un archivo en un servidor FTP (S). El argumento del método debe ser una de las siguientes alternativas:

multicwd

rizo hace un solo CWD operación para cada parte de la ruta en la URL dada. Para jerarquías profundas, esto significa muchos comandos. Este es el comportamiento predeterminado pero el más lento.

nocwd

rizo no CWD en absoluto. rizo servirá TALLA , RETR , GRANDE , etc. y proporcione una ruta completa al servidor para todos estos comandos. Este es el comportamiento más rápido.

singlecwd

curl hace un CWD con el directorio de destino completo y luego opera en el archivo 'normalmente' (como en el caso de multicwd). Esto es algo más compatible con los estándares que ' nocwd 'pero sin la pena completa de' multicwd '.
--ftp-pasv ( FTP ) Utilice PASV al realizar la transferencia. PASV es el comportamiento interno predeterminado, pero el uso de esta opción puede anular una --puerto ftp opción. (Agregado en 7.11.0)

Si esta opción se usa varias veces, las siguientes ocurrencias no hacen ninguna diferencia. Deshacer una pasiva forzada realmente no es factible, pero en su lugar debe hacer cumplir la -PAG , --puerto ftp de nuevo.

El modo pasivo significa que curl probará primero el comando EPSV y luego PASV, a menos que --disable-epsv se utiliza.
--ftp-alternativa-al-usuario ( FTP ) Si se autentica con el USUARIO y APROBAR los comandos fallan, envíe este comando. Al conectarse al servidor de transporte seguro de Tumbleweed a través de FTPS utilizando un certificado de cliente, utilice ' AUTORIZACIÓN DEL SITIO 'le dirá al servidor que recupere el nombre de usuario del certificado. (Agregado en 7.15.5)
--ftp-skip-pasv-ip ( FTP ) Contar rizo para no usar el IP dirección que sugiere el servidor en su respuesta a rizo comando PASV cuando rizo conecta la conexión de datos. En lugar de, rizo reutilizará la misma dirección IP que ya utiliza para la conexión de control. (Agregado en 7.14.2)

Esta opción no tiene ningún efecto si se utiliza PORT, EPRT o EPSV en lugar de PASV.
--ftp-pret ( FTP ) Contar rizo para enviar un comando PRET antes de PASV (y EPSV). Ciertos servidores FTP, principalmente drftpd, requieren este comando no estándar para listados de directorios y descargas en modo PASV. (Agregado en 7.20.x)
--ftp-ssl ( FTP ) Intente utilizar SSL / TLS para la conexión FTP. Vuelve a una conexión no segura si el servidor no admite SSL / TLS. (Agregado en 7.11.0)

Si esta opción se usa dos veces, la segunda la desactivará nuevamente.
--ftp-ssl-ccc ( FTP ) Usar CCC (Clear Command Channel) Cierra la capa SSL / TLS después de la autenticación. El resto de la comunicación del canal de control no estará cifrado. Esto permite que los enrutadores NAT sigan la transacción FTP. El modo predeterminado es pasivo. Ver --ftp-ssl-ccc-modo para otros modos. (Agregado en 7.16.1)
--ftp-ssl-ccc-modo [ activo pasivo ] ( FTP ) Usar CCC (Borrar canal de comando) Configura el modo CCC. El modo pasivo no iniciará el apagado, sino que esperará a que el servidor lo haga y no responderá al apagado del servidor. El modo activo inicia el apagado y espera una respuesta del servidor. (Agregado en 7.16.2)
--ftp-ssl-control ( FTP ) Requiere SSL / TLS para el inicio de sesión FTP, desactivado para transferencia. Permite una autenticación segura, pero transferencias de datos no cifradas para mayor eficiencia. La transferencia falla si el servidor no es compatible con SSL / TLS. (Agregado en 7.16.0)
--ftp-ssl-reqd ( FTP ) Requiere SSL / TLS para la conexión FTP. Termina la conexión si el servidor no es compatible con SSL / TLS. (Agregado en 7.15.5)

Si esta opción se usa dos veces, la segunda la desactivará nuevamente.
-F , --formulario ( HTTP ) Esto permite rizo emular un formulario completo en el que un usuario ha presionado el botón de envío. Esto causa rizo a CORREO datos usando el tipo de contenido multiparte / form-data según RFC1867. Esto permite la carga de archivos binarios, etc. Para forzar que la parte 'contenido' sea un archivo, anteponga el nombre del archivo con un ' @ ' personaje. Para obtener la parte del contenido de un archivo, anteponga el nombre del archivo con la letra ' < '. La diferencia entre ' @ ' y ' < ' es eso @ hace que un archivo se adjunte en la publicación como una carga de archivo, mientras que el < crea un campo de texto y obtiene el contenido de ese campo de texto de un archivo.

Por ejemplo, para enviar su archivo de contraseña al servidor, donde 'contraseña' es el nombre del campo de formulario que / etc / passwd es la entrada:

curl -F [correo electrónico protegido] / etc / passwd www.mypasswords.com

Para leer el contenido del archivo desde stdin en lugar de un archivo, use ' - 'donde debería haber estado el nombre del archivo. Esto va para ambos @ y < constructos.

También puede decirle a curl que use un tipo de contenido específico usando ' Tipo = ', de manera similar a:

curl -F '[correo electrónico protegido]; Tipo = texto / html' url.com

o

curl -F 'nombre = daniel; Tipo = texto / foo' url.com

También puede cambiar explícitamente el campo de nombre de una parte de carga de archivo configurando filename =, así:

curl -F '[correo electrónico protegido]; nombre de archivo = nameinpost' url.com

Si el nombre de archivo / ruta contiene ' , ' o ' ; ', debe estar entre comillas dobles, por ejemplo:

curl -F '[correo electrónico protegido] ' archivo local '; nombre de archivo = ' nameinpost '' url.com

o

curl -F '[correo electrónico protegido]' localfile '; filename =' nameinpost '' url.com

Tenga en cuenta que si un nombre de archivo / ruta está entre comillas dobles, cualquier comilla doble o barra invertida en el nombre de archivo debe tener un carácter de escape con barra invertida.

Esta opción se puede utilizar varias veces.
--form-string ( HTTP ) Similar a --formulario excepto que la cadena de valor para el parámetro nombrado se usa literalmente. Principal ' @ ' y ' < 'personajes, y el' ; Tipo = 'cadena en el valor no tiene un significado especial. Utilice esto en lugar de --formulario si existe alguna posibilidad de que el valor de la cadena active accidentalmente el ' @ ' o ' < ' caracteristicas de --formulario .
-gramo , --globoff Esta opción desactiva el 'analizador global de URL'. Cuando configura esta opción, puede especificar las URL que contienen las letras {}[] sin que sean interpretados por rizo sí mismo. Tenga en cuenta que estas letras no son contenidos de URL legales normales, pero deben codificarse de acuerdo con el estándar URI.
-GRAMO , --obtener Cuando se usa, esta opción hace que todos los datos especificados con -D / --datos o --data-binary para ser utilizado en una solicitud HTTP GET en lugar de la solicitud POST que de otro modo se usaría. Los datos se adjuntarán a la URL con un ' ? 'separador.

Si se usa en combinación con -I , los datos POST se adjuntarán a la URL con una solicitud HEAD.

Si esta opción se usa varias veces, solo se usa la primera. Esto se debe a que deshacer un GET no tiene sentido, pero aplique el método alternativo que prefiera.
-H , --encabezamiento ( HTTP ) Encabezado adicional para usar al obtener un página web . Puede especificar cualquier número de encabezados adicionales. Tenga en cuenta que si agrega un encabezado personalizado con el mismo nombre que uno de los internos que usaría curl, se usará su encabezado establecido externamente en lugar del interno. Esto te permite hacer cosas aún más complicadas que rizo normalmente haría. No debe reemplazar los encabezados configurados internamente sin saber perfectamente lo que está haciendo. Elimine un encabezado interno dando un reemplazo sin contenido en el lado derecho de los dos puntos, como en: -H 'Anfitrión:' . Si envía el encabezado personalizado sin valor, su encabezado debe terminar con un punto y coma, como -H 'X-Encabezado-personalizado;' mandar ' Encabezado X-personalizado: '.

rizo se asegura de que cada encabezado que agregue / reemplace se envíe con el marcador de final de línea adecuado, por lo tanto, no agregue eso como parte del contenido del encabezado: no agregue nuevas líneas o retornos de carro, solo arruinan las cosas para usted.

Ver también el -A / --agente de usuario y -es / --referer opciones.

Esta opción se puede usar varias veces para agregar / reemplazar / eliminar múltiples encabezados.
--hostpubmd5 ( SCP / SFTP ) Pase una cadena que contenga 32 hexadecimal dígitos. La cadena debe ser la suma de comprobación MD5 de 128 bits de la clave pública del host remoto, curl rechazará la conexión con el host a menos que md5sums coincida. (Agregado en 7.17.1)
--ignore-content-length ( HTTP ) Ignore el encabezado Content-Length. Esto es particularmente útil para servidores que ejecutan Apache 1.x, que informarán incorrectamente Largancia de contenido para archivos mayores de 2 gigabytes .
-I , --incluir ( HTTP ) Incluya el encabezado HTTP en la salida. El encabezado HTTP incluye cosas como el nombre del servidor, la fecha del documento, la versión HTTP y más.
--interfaz Realice una operación utilizando un interfaz . Puede ingresar el nombre de la interfaz, la dirección IP o nombre de host . Un ejemplo podría verse así:

curl - interfaz eth0: 1 http://www.netscape.com/

Si esta opción se usa varias veces, se usará la última.
-I , --cabeza ( HTTP / FTP / ARCHIVO ) Obtenga solo el encabezado HTTP. Los servidores HTTP cuentan con el comando HEAD que usa para obtener nada más que el encabezado de un documento. Cuando se utiliza en un archivo FTP o FILE, rizo muestra solo el tamaño del archivo y la hora de la última modificación.
-j , - cookies-de-sesión-basura ( HTTP ) Cuándo rizo se le dice que lea las cookies de un archivo, esta opción hace que descarte todas las 'cookies de sesión'. Esta opción tiene el mismo efecto que si se inicia una nueva sesión. Los navegadores habituales siempre descartan las cookies de sesión cuando se cierran.
-J , --remote-header-name ( HTTP ) Esta opción le dice al -O , --nombre-remoto opción para utilizar el nombre de archivo de disposición de contenido especificado por el servidor en lugar de extraer un nombre de archivo de la URL.
-a , --inseguro ( SSL ) Esta opción permite explícitamente rizo para realizar conexiones y transferencias SSL 'inseguras'. Se intenta que todas las conexiones SSL se aseguren mediante el paquete de certificado CA instalado de forma predeterminada. Todas las conexiones consideradas 'inseguras' fallan a menos que -a / --inseguro se utiliza.

Consulte este recurso en línea para obtener más información: https://curl.haxx.se/docs/sslcerts.html .
--clave ( SSL / SSH ) Nombre del archivo de clave privada. Le permite proporcionar su clave privada en este archivo separado.

Si esta opción se usa varias veces, se usará la última.
- tipo de llave ( SSL ) Tipo de archivo de clave privada. Especifique de qué tipo --clave siempre que la clave privada sea. Se admiten DER, PEM y ENG. Si no se especifica, se asume PEM.

Si esta opción se usa varias veces, se usa la última.
--chimenea ( FTP ) Habilite la autenticación y el uso de Kerberos. El nivel debe ingresarse y debe ser uno de 'claro', 'seguro', 'confidencial' o 'privado'. Si usa un nivel que no es uno de estos, en su lugar se usa 'privado'.

Esta opción requiere una biblioteca construida con soporte kerberos4 o GSSAPI (GSS-Negotiate). Esto no es muy común. Usar -V , --versión para ver si tu rizo lo apoya.

Si esta opción se usa varias veces, se usa la última.
-A , --config Especifique qué archivo de configuración leer rizo argumentos. El archivo de configuración es un archivo de texto donde se pueden escribir los argumentos de la línea de comandos, que luego se usan como si estuvieran escritos en la línea de comandos real. Las opciones y sus parámetros deben especificarse en la misma línea del archivo de configuración. Si el parámetro debe contener espacios en blanco, el parámetro debe ir entre comillas. Si la primera columna de una línea de configuración es un ' # ', el resto de la línea se trata como un comentario . Solo escriba una opción por línea física en el archivo de configuración.

Especifique el nombre del archivo como ' - 'para hacer que curl lea el archivo de stdin.

Tenga en cuenta que para poder especificar una URL en el archivo de configuración, debe especificarlo mediante el --url opción, y no escribiendo la URL en su propia línea. Entonces, podría verse similar a esto:

url = 'https://curl.haxx.se/docs/'

Opcionalmente, se pueden dar nombres largos de opciones en el archivo de configuración sin los guiones dobles iniciales.

Cuándo rizo se invoca, siempre (a menos que -q se usa) busca un archivo de configuración predeterminado y lo usa si lo encuentra. El archivo de configuración predeterminado se comprueba en los siguientes lugares en este orden:

1) rizo intenta encontrar el 'directorio de inicio': primero comprueba el CURL_HOME y luego el CASA Variables de entorno. Si eso falla, usa getpwuid () en sistemas tipo Unix (que devuelve el directorio de inicio dado el usuario actual en su sistema). En Windows, luego busca el DATOS DE APLICACIÓN variable, o como último recurso el ' % PERFIL DE USUARIO% Datos de la aplicación '.

2) En Windows, si no hay _curlrc archivo en el directorio de inicio, busca uno en el mismo directorio que el ejecutable rizo es colocado. En sistemas similares a Unix, intentará cargar .curlrc desde el domicilio determinado dir.

Esta opción se puede utilizar varias veces para cargar varios archivos de configuración.
--keepalive-time Esta opción establece el tiempo que una conexión debe permanecer inactiva antes de enviar sondas de estado activo y el tiempo entre sondas de estado activo individuales. Actualmente es efectivo en sistemas operativos que ofrecen las opciones de socket TCP_KEEPIDLE y TCP_KEEPINTVL (es decir, Linux, AIX reciente, HP-UX y más). Esta opción no tiene ningún efecto si --no-keepalive se utiliza. (Agregado en 7.18.0)

Si esta opción se usa varias veces, se usará la última. Si no se especifica, la opción tiene un valor predeterminado de 60 segundos.
- tasa límite Especifique la tasa de transferencia máxima que desea rizo usar. Esta función es útil si tiene una tubería limitada y desea que su transferencia no use todo su ancho de banda.

La velocidad dada se mide en bytes / segundo, a menos que se agregue un sufijo. Anexando ' a ' o ' A 'contará el número como kilobytes , ' metro ' o ' METRO ' lo hace megabytes tiempo ' gramo ' o ' GRAMO 'lo convierte en gigabytes. Ejemplos: 200 mil , 3m y 1G .

La tasa dada es la velocidad promedio contada durante toda la transferencia. Esto significa que rizo puede usar velocidades de transferencia más altas en ráfagas cortas, pero con el tiempo no usa más que la velocidad dada.

Si también está utilizando el -Y / --Límite de velocidad opción, esa opción tiene prioridad y podría paralizar ligeramente la limitación de velocidad, para ayudar a mantener funcionando la lógica del límite de velocidad.

Si esta opción se usa varias veces, se usará la última.
-l / --sólo lista ( FTP ) Cuando se enumera un directorio FTP, este conmutador fuerza una vista de solo nombre. Especialmente útil si desea analizar automáticamente el contenido de un directorio FTP, ya que la vista de directorio normal no usa un aspecto o formato estándar.

Esta opción hace que se envíe un comando FTP NLST. Algunos servidores FTP enumeran solo archivos en su respuesta a NLST; ellos no incluyen subdirectorios y enlaces simbólicos .
--puerto local [ - en uno ] Establezca un número o rango preferido de Puerto números que se utilizarán para las conexiones. Tenga en cuenta que, por naturaleza, los números de puerto son un recurso escaso que a veces estará ocupado, por lo que establecer este rango en algo demasiado estrecho podría causar fallas de configuración de conexión innecesarias. (Agregado en 7.15.2)
-L , --localización ( HTTP / HTTPS ) Si el servidor informa que la página solicitada se ha movido a una ubicación diferente (indicada con un Localización: encabezado y un código de respuesta 3XX) esta opción hace rizo rehaga la solicitud en el nuevo lugar. Si se usa junto con -I / --incluir o -I / --cabeza , se muestran los encabezados de todas las páginas solicitadas. Cuando se usa la autenticación, rizo solo envía sus credenciales al host inicial. Si un redireccionamiento toma rizo a un host diferente, no podrá interceptar el usuario + contraseña. Ver también - ubicación de confianza sobre cómo cambiar esto. Puede limitar la cantidad de redireccionamientos a seguir usando el --max-redirs opción.

Cuándo rizo sigue un redireccionamiento y la solicitud no es un GET simple (por ejemplo, POST o PUT), realiza la siguiente solicitud con un GET si la respuesta HTTP fue 301, 302 o 303. Si el código de respuesta fue cualquier otro código 3xx, rizo reenvía la siguiente solicitud utilizando el mismo método sin modificar.
--libcurl Agregue esta opción a cualquier ordinario rizo línea de comandos, y recibe como salida un código fuente en C que usa libcurl, escrito en el archivo que hace el equivalente a lo que hace su operación de línea de comandos. Cabe señalar que esta opción es extremadamente impresionante.

Si esta opción se usa varias veces, se usa el último nombre de archivo dado. (Agregado en 7.16.1)
- ubicación de confianza ( HTTP / HTTPS ) Similar a -L / --localización , pero permite enviar el nombre + contraseña a todos los hosts a los que el sitio puede redirigir. Esto puede o no introducir una brecha de seguridad si el sitio lo redirecciona a un sitio para enviar su información de autenticación (que es texto sin formato en el caso de la autenticación HTTP básica).
--Tamaño máximo de archivo Especifique el tamaño máximo (en bytes) de un archivo para descargar. Si el archivo solicitado es mayor que este valor, la transferencia no se inicia y rizo regresa con el código de salida 63.

NOTA: El tamaño del archivo no siempre se conoce antes de la descarga y, para tales archivos, esta opción no tiene ningún efecto incluso si la transferencia del archivo termina siendo mayor que este límite dado. Esto se refiere tanto a las transferencias FTP como a las HTTP.
-metro , --máx-tiempo Tiempo máximo en segundos que permite que dure toda la operación. Esto es útil para evitar que sus trabajos por lotes se cuelguen durante horas debido a redes lentas o enlaces caídos. Ver también el --connect-timeout opción.

Si esta opción se usa varias veces, se usará la última.
--mail-auth ( SMTP ) Especifique una única dirección. Esto se utilizará para especificar la dirección de autenticación (identidad) de un mensaje enviado que se está retransmitiendo a otro servidor.

(Agregado en 7.25.0)
--correo de ( SMTP ) Especifique una única dirección desde la que se debe enviar el correo dado.

(Agregado en 7.20.0)
--mail-rcpt ( SMTP ) Especifique una única dirección a la que se debe enviar el correo dado. Esta opción se puede utilizar varias veces para especificar varios destinatarios.

(Agregado en 7.20.0)
--metalink Esta opción puede decir rizo para analizar y procesar un URI determinado como un archivo Metalink (se admiten tanto la versión 3 como la 4 (RFC 5854)) y hacer uso de los espejos enumerados para la conmutación por error si hay errores (como que el archivo o el servidor no están disponibles). También verifica la picadillo del archivo después de que se complete la descarga. El archivo de Metalink en sí se descarga y procesa en la memoria y no se almacena en el sistema de archivos local.

Ejemplo para utilizar un archivo Metalink remoto:

curl --metalink http://www.example.com/example.metalink

Para usar un archivo Metalink en el sistema de archivos local, use el protocolo FILE (file: //):

curl --metalink file: //example.metalink

Tenga en cuenta que si el protocolo FILE está desactivado, no hay forma de utilizar un archivo Metalink local en el momento de escribir este artículo. Además, tenga en cuenta que si --metalink y --incluir se usan juntos, --incluir será ignorado. Esto se debe a que incluir encabezados en la respuesta romperá el analizador de Metalink y si los encabezados se incluyen en el archivo descrito en el archivo Metalink, la comprobación de hash falla.

(Agregado en 7.27.0, si se compila con la biblioteca libmetalink).
-norte , --netrc Hace que el rizo escanee el .netrc archivo en el directorio de inicio del usuario para el nombre de inicio de sesión y la contraseña. Esto se usa para ftp en Unix. Si se usa con http, rizo habilita la autenticación de usuarios. Ver netrc (4) o ftp documentación para obtener detalles sobre el formato de archivo. Rizo no se quejará si ese archivo no tiene los permisos adecuados (no debería ser legible para el mundo ni para el grupo). La variable de entorno ' CASA 'se utiliza para buscar el directorio de inicio.

Un ejemplo rápido y muy simple de cómo configurar un .netrc permitir rizo a ftp a la máquina host.domain.com con el nombre de usuario 'yo mismo' y la contraseña 'secreta' debería tener un aspecto similar a:

máquina host.domain.com iniciar sesión yo mismo contraseña secreta

Si esta opción se usa dos veces, la segunda deshabilitará nuevamente el uso de netrc.
--negociar ( HTTP ) Habilita la autenticación GSS-Negotiate. El método GSS-Negotiate fue diseñado por Microsoft y se utiliza en sus aplicaciones web. Está pensado principalmente como soporte para la autenticación Kerberos5, pero también puede usarse con otros métodos de autenticación.

Esta opción requiere que la biblioteca curl se haya creado con soporte GSSAPI. Esto no es muy común. Usar -V / --versión para ver si su versión es compatible con GSS-Negotiate.

Al usar esta opción, también debe proporcionar una -u / --usuario opción para activar el código de autenticación correctamente. Enviando un ' -u: 'es suficiente ya que el nombre de usuario y la contraseña del -u La opción no se utiliza realmente.

Si esta opción se usa varias veces, las siguientes ocurrencias no hacen ninguna diferencia.
--no-keepalive Desactiva el uso de mensajes keepalive en el TCP conexión, como por defecto rizo les permite.

Tenga en cuenta que este es el nombre de opción negado documentado. Por lo tanto, puede utilizar --mantener viva para hacer cumplir keepalive.
--no-sessionid ( SSL ) Desactivar rizo Uso del almacenamiento en caché de ID de sesión SSL. De forma predeterminada, todas las transferencias se realizan utilizando la caché. Tenga en cuenta que, si bien nada debería resultar dañado al intentar reutilizar los ID de sesión SSL, parece que hay implementaciones de SSL rotas en la naturaleza que pueden requerir que lo desactive para que tenga éxito. (Agregado en 7.16.0)

Tenga en cuenta que este es el nombre de opción negado documentado. Por lo tanto, puede utilizar --ID de sesión para hacer cumplir el almacenamiento en caché de ID de sesión.
--noproxy Lista separada por comas de hosts que no utilizan un proxy, si se especifica uno. El único comodín es un sencillo * carácter, que coincide con todos los hosts y deshabilita efectivamente el proxy. Cada nombre de esta lista coincide con un dominio que contiene el nombre de host o el nombre de host en sí. Por ejemplo, local.com coincidiría local.com , local.com:80 , y www.local.com , pero no www.notlocal.com . (Agregado en 7.19.4).
-NORTE , --no-buffer Desactiva el almacenamiento en búfer del flujo de salida. En situaciones laborales normales, rizo utiliza un flujo de salida estándar almacenado en búfer con el efecto de generar los datos en fragmentos, no necesariamente exactamente cuando llegan los datos. El uso de esta opción desactiva ese almacenamiento en búfer.

Tenga en cuenta que este es el nombre de opción negado documentado. Por lo tanto, puede utilizar --buffer para hacer cumplir el almacenamiento en búfer.
--archivonetrc Esta opción es similar a --netrc , excepto que proporcione la ruta (absoluta o relativa) al archivo netrc que rizo debería usar. Solo puede especificar un archivo netrc por invocación. Si varios --archivonetrc se proporcionan opciones, solo se utilizará la última. (Agregado en 7.21.5)

Esta opción anula cualquier uso de --netrc ya que son mutuamente excluyentes. También se rige por --netrc-opcional si se especifica.
--netrc-opcional Muy parecido a --netrc , pero esta opción hace que el uso de .netrc sea opcional y no obligatorio, ya que --netrc la opción lo hace.
--ntlm ( HTTP ) Habilita la autenticación NTLM. El método de autenticación NTLM fue diseñado por Microsoft y lo utilizan los servidores web IIS. Es un protocolo patentado, diseñado por personas inteligentes e implementado en rizo basado en sus esfuerzos. Este tipo de comportamiento no debe respaldarse, anime a todos los que usan NTLM a cambiar a un método de autenticación público y documentado, como Digest.

Si desea habilitar NTLM para su autenticación de proxy, utilice --proxy-ntlm .

Esta opción requiere una biblioteca construida con soporte SSL. Usar -V , --versión para ver si tu rizo es compatible con NTLM.

Si esta opción se usa varias veces, solo se usa la primera.
-o , --producción Escribir salida en en lugar de stdout. Si esta usando {} o [] para buscar varios documentos, puede usar ' # 'seguido de un número en el especificador. Esa variable se reemplazará con la cadena actual de la URL que se está recuperando. Como en:

curl http: // {uno, dos} .site.com -o 'file_ # 1.txt'

o use varias variables como:

curl http: // {sitio, host} .host [1-5] .com -o '# 1_ # 2'

Puede utilizar esta opción tantas veces como tenga la cantidad de URL.

Ver también el --create-dirs opción para crear los directorios locales dinámicamente. Especificando la salida como ' - '(un solo guión) forzará a que la salida se realice a la salida estándar.
-O , --nombre-remoto Escribe la salida en un archivo local llamado como el archivo remoto que obtenemos. (Solo se usa la parte del archivo del archivo remoto, la ruta está cortada).

El nombre del archivo remoto que se usará para guardar se extrae de la URL proporcionada, nada más.

Consecuentemente, el archivo se guardará en el directorio de trabajo actual. Si desea que el archivo se guarde en un directorio diferente, asegúrese de cambiar el directorio de trabajo actual antes de invocar rizo con el -O , --nombre-remoto ¡bandera!

Puede utilizar esta opción tantas veces como tenga la cantidad de URL.
--aprobar ( SSL / SSH ) Frase de contraseña para la clave privada.

Si esta opción se usa varias veces, se usará la última.
--post301 ( HTTP ) Dice rizo respetar RFC 2616 / 10.3.2 y no convertir las solicitudes POST en solicitudes GET cuando se sigue una redirección 301. El comportamiento no RFC es omnipresente en los navegadores web, por lo que rizo realiza la conversión de forma predeterminada para mantener la coherencia. Sin embargo, un servidor puede requerir que una POST siga siendo POST después de dicha redirección. Esta opción es significativa solo cuando se usa -L , --localización (Agregado en 7.17.1)
--post302 ( HTTP ) Dice rizo respetar RFC 2616 / 10.3.2 y no convertir las solicitudes POST en solicitudes GET cuando se sigue una redirección 302. El comportamiento no RFC es omnipresente en los navegadores web, por lo que rizo realiza la conversión de forma predeterminada para mantener la coherencia. Sin embargo, un servidor puede requerir que una POST siga siendo POST después de dicha redirección. Esta opción es significativa solo cuando se usa -L , --localización (Agregado en 7.19.1)
--post303 ( HTTP ) Dice rizo respetar RFC 2616 / 10.3.2 y no convertir las solicitudes POST en solicitudes GET cuando se sigue una redirección 303. El comportamiento no RFC es omnipresente en los navegadores web, por lo que rizo realiza la conversión de forma predeterminada para mantener la coherencia. Sin embargo, un servidor puede requerir que una POST siga siendo POST después de dicha redirección. Esta opción es significativa solo cuando se usa -L , --localización (Agregado en 7.26.0)
--por lo tanto Dice rizo utilizar los protocolos enumerados para su recuperación inicial. Los protocolos se evalúan de izquierda a derecha, están separados por comas y cada uno es un nombre de protocolo o ' todas ', opcionalmente prefijado por cero o más modificadores. Los modificadores disponibles son:

+

Permita este protocolo además de los protocolos ya permitidos (este es el valor predeterminado si no se usa ningún modificador).

-

Rechace este protocolo, eliminándolo de la lista de protocolos ya permitidos.

=

Permita solo este protocolo (ignorando la lista ya permitida), aunque sujeto a modificaciones posteriores mediante entradas posteriores en la lista separada por comas.

Por ejemplo:

--proto -ftps usa los protocolos predeterminados, pero deshabilita ftps

--proto -todos, https, + http solo habilita http y https

--proto = http, https también solo habilita http y https

Los protocolos desconocidos producen una advertencia. Esto permite guiones confiar de forma segura en la posibilidad de deshabilitar protocolos potencialmente peligrosos, sin depender de la compatibilidad con ese protocolo incorporado rizo para evitar un error.

Esta opción se puede utilizar varias veces, lo que equivale a concatenar los protocolos en una instancia de la opción. (Agregado en 7.20.2)
--proto-redir
Dice rizo para utilizar los protocolos enumerados después de una redirección. Ver --por lo tanto para saber cómo se representan los protocolos. (Agregado en 7.20.2)
--proxy-anyauth Dice rizo para elegir un método de autenticación adecuado al comunicarse con el proxy dado. Esto provoca un viaje de ida y vuelta de solicitud / respuesta adicional. (Agregado en 7.13.2)
--proxy-básico Dice rizo para utilizar la autenticación HTTP básica al comunicarse con el proxy dado. Usar --básico para habilitar HTTP Basic con un host remoto. Básico es el método de autenticación predeterminado rizo utiliza con proxies.
--digestión indirecta Dice rizo para utilizar la autenticación HTTP Digest al comunicarse con el proxy dado. Usar --digerir para habilitar HTTP Digest con un host remoto.
--proxy-ntlm Dice rizo para utilizar la autenticación HTTP NTLM al comunicarse con el proxy dado. Usar --ntlm para habilitar NTLM con un host remoto.
--proxy1.0
[ : Puerto ]>
Utilice el proxy HTTP 1.0 especificado. Si no se especifica el número de puerto, se asume en el puerto 1080.

La única diferencia entre esto y la opción de proxy HTTP ( -x , --apoderado ), es que intenta utilizar CONNECT a través del proxy especificando un protocolo HTTP 1.0 en lugar del HTTP 1.1 predeterminado.
--pubkey ( SSH ) Nombre de archivo de clave pública. Le permite proporcionar su clave pública en este archivo separado.

Si esta opción se usa varias veces, se usa la última.
-pag , - túnel proxy Cuando se utiliza un proxy HTTP ( -x , --apoderado ), esta opción hace que los protocolos que no son HTTP intenten hacer un túnel a través del proxy en lugar de simplemente usarlo para realizar operaciones similares a HTTP. El enfoque de túnel se realiza con la solicitud CONNECT del proxy HTTP y requiere que el proxy permita la conexión directa al número de puerto remoto rizo quiere hacer un túnel a través de.
-PAG , --puerto ftp
( FTP ) Invierte las funciones predeterminadas de iniciador / oyente cuando se conecta con FTP. Este interruptor hace rizo utilizar el modo activo. En la práctica, rizo luego le dice al servidor que se conecte de nuevo a la dirección y al puerto especificados por el cliente, mientras que el modo pasivo le pide al servidor que configure una dirección IP y un puerto para conectarse. debe ser uno de:

interfaz

es decir ' eth0 'para especificar la dirección IP de la interfaz que desea usar (solo Unix)

dirección IP

es decir ' 192.168.10.1 'para especificar la dirección IP exacta

nombre de host

es decir ' my.host.domain 'para especificar la máquina

-

fabricar rizo elija la misma dirección IP que ya se utiliza para la conexión de control.

Si esta opción se usa varias veces, se usa la última. Desactive el uso de PORT con --ftp-pasv . Deshabilite el intento de usar el comando EPRT en lugar de PORT usando --disable-eprt . EPRT es realmente PORT ++.

A partir de 7.19.5, puede agregar ' :[inicio fin] 'a la derecha de la dirección, para decirle a curl qué rango de puertos TCP usar. Eso significa que especifica un rango de puertos, de un número menor a uno mayor. Un solo número también funciona, pero tenga en cuenta que aumenta el riesgo de falla, ya que es posible que el puerto no esté disponible.
-q Si se usa como primer parámetro en la línea de comando, el curlrc El archivo de configuración no se lee ni se usa. Ver el -A , --config para obtener detalles sobre la ruta de búsqueda del archivo de configuración predeterminada.
-Q , --cita
(FTP / SFTP) Envíe un comando arbitrario al servidor FTP o SFTP remoto. Los comandos de cotización se envían ANTES de que se lleve a cabo la transferencia (después del comando PWD inicial para ser exactos). Para que los comandos tengan lugar después de una transferencia exitosa, antepóngalos con un guión ' - '. Para hacer que los comandos se envíen después de que libcurl haya cambiado el directorio de trabajo, antes de los comandos de transferencia, anteponga el comando con ' + '(esto solo es compatible con FTP). Puede especificar cualquier cantidad de comandos. Si el servidor devuelve una falla para uno de los comandos, se cancelará toda la operación. Debe enviar comandos FTP sintácticamente correctos como RFC959 define a los servidores FTP, o uno de los comandos enumerados a continuación a los servidores SFTP.

Esta opción se puede utilizar varias veces. Cuando hable con un servidor FTP, anteponga el comando con un asterisco ( * ) para hacer rizo continuar incluso si el comando falla como por defecto rizo se detiene en el primer fallo.

SFTP es un protocolo binario. A diferencia de FTP, rizo interpreta los comandos de cotización SFTP antes de enviarlos al servidor. Los nombres de archivo se pueden citar en estilo shell para insertar espacios o caracteres especiales. A continuación se muestra la lista de todos los comandos de cotización SFTP compatibles:

archivo de grupo chgrp

La chgrp El comando establece el ID de grupo del archivo nombrado por el operando de archivo en el ID de grupo especificado por el operando de grupo. El operando de grupo es un ID de grupo entero decimal.

archivo de modo chmod

La chmod El comando modifica los bits del modo de archivo del archivo especificado. El operando de modo es un número de modo entero octal.

archivo de usuario chown

La chown El comando establece el propietario del archivo nombrado por el operando del archivo en el ID de usuario especificado por el operando del usuario. El operando de usuario es un ID de usuario entero decimal.

en source_file target_file

La en y enlace simbólico Los comandos crean un enlace simbólico en la ubicación del archivo_destino que apunta a la ubicación del archivo_origen.

mkdir nombre_directorio

La mkdir comando crea el directorio nombrado por el operando nombre_directorio.

pwd

La pwd El comando devuelve el nombre de ruta absoluto del directorio de trabajo actual.

cambiar el nombre del destino de origen

La rebautizar El comando cambia el nombre del archivo o directorio nombrado por el operando de origen a la ruta de destino nombrada por el operando de destino.

archivo rm

La rm comando elimina el archivo especificado por el operando del archivo.

directorio rmdir

La rmdir El comando elimina la entrada de directorio especificada por el operando de directorio, siempre que esté vacía.

enlace simbólico archivo_origen archivo_destino

Ver en .
--archivo aleatorio ( SSL ) Especifique el nombre de la ruta al archivo que contiene lo que se considerará como datos aleatorios. Los datos se utilizan para inicializar el motor aleatorio para conexiones SSL. Ver también el - archivo egd opción.
--crudo ( HTTP ) Cuando se usa, deshabilita toda la decodificación HTTP interna de contenido o codificaciones de transferencia y, en su lugar, las hace pasar sin alterar, sin procesar. (Agregado en 7.16.2)
--remote-name-all Esta opción cambia la acción predeterminada para que todas las URL dadas se traten como si -O , --nombre-remoto se utilizaron para cada uno. Entonces, si desea deshabilitar eso para una URL específica después --remote-name-all se usa, debes usar ' -o - ' o --no-nombre-remoto . (Agregado en 7.19.0)
--resolver : Puerto : dirección> Proporcione una dirección personalizada para un par de puerto y host específico. Con esto, puede hacer que el rizo las solicitudes utilizan una dirección especificada y evitan que se utilice la dirección normalmente resuelta. Considéralo una especie de / etc / hosts alternativa proporcionada en la línea de comando. El número de puerto debe ser el número utilizado para el protocolo específico para el que se utilizará el host. Significa que necesita varias entradas si desea proporcionar una dirección para el mismo host pero diferentes puertos.

Esta opción se puede usar muchas veces para agregar muchos nombres de host para resolver.

(Agregado en 7.21.3)
-r , --distancia ( HTTP / FTP ) Recupere un rango de bytes (es decir, un documento parcial) de un servidor HTTP / 1.1 o FTP. Los rangos se pueden especificar de muchas formas.

0-499 especifica los primeros 500 bytes;

500-999 especifica los segundos 500 bytes;

-500 especifica los últimos 500 bytes;

9500- especifica los bytes desde el desplazamiento 9500 en adelante;

0-0,-1 especifica el primer y último byte solamente (*) (H);

500-700,600-799 especifica 300 bytes desde el desplazamiento 500 (H);

100-199,500-599 especifica dos rangos separados de 100 bytes (*) (H).

(*) = NOTA que esto hace que el servidor responda con una respuesta multiparte!

También tenga en cuenta que muchos servidores HTTP / 1.1 no tienen esta función habilitada, de modo que cuando intente obtener un rango, obtendrá el documento completo.

Las descargas de rango de FTP solo admiten la sintaxis simple ' arrancar-parar '(opcionalmente con uno de los números omitidos). Depende del TAMAÑO del comando no RFC.

Solo los caracteres de dígitos (0-9) son válidos en el ' comienzo ' y ' detener 'campos de la' arrancar-parar 'gama de sintaxis. Si se proporciona un carácter que no sea un dígito en el rango, la respuesta del servidor no será especificada, dependiendo de la configuración del servidor.

Si esta opción se usa varias veces, se usará la última.
-R , --tiempo remoto Cuando se usa, esto hace que libcurl intente averiguar el marca de tiempo del archivo remoto, y si está disponible, haga que el archivo local obtenga la misma marca de tiempo.
--rever Si se devuelve un error transitorio cuando rizo intenta realizar una transferencia, lo vuelve a intentar este número de veces antes de darse por vencido. Establecer el número en 0 hace rizo no reintentar (que es el valor predeterminado). Error transitorio significa: un tiempo de espera, un código de respuesta FTP 5xx o un código de respuesta HTTP 5xx.

Cuándo rizo está a punto de reintentar una transferencia, primero espera un segundo y luego, para todos los reintentos siguientes, duplica el tiempo de espera hasta que alcanza los 10 minutos, que es el retraso entre el resto de reintentos. Utilizando --retraso de reintento , deshabilita este algoritmo de retroceso exponencial. Ver también --retry-max-time para limitar el tiempo total permitido para reintentos. (Agregado en 7.12.3)

Si esta opción se usa varias veces, la última aparición decide la cantidad.
--retraso de reintento
Fabricar rizo dormir esta cantidad de tiempo entre cada reintento cuando una transferencia ha fallado con un error transitorio (cambia el algoritmo de tiempo de espera predeterminado entre reintentos). Esta opción solo es interesante si --rever también se utiliza. Establecer esta demora en cero hace que curl use el tiempo de espera predeterminado. (Agregado en 7.12.3)

Si esta opción se usa varias veces, la última aparición decide la cantidad.
--retry-max-time El temporizador de reintento se restablece antes del primer intento de transferencia. Los reintentos se realizarán como de costumbre (consulte --rever ) siempre que el temporizador no haya alcanzado este límite dado. Tenga en cuenta que si el temporizador no ha alcanzado el límite, se realizará la solicitud y, mientras se realiza, puede demorar más que este tiempo determinado. Para limitar el tiempo máximo de una sola solicitud, use -metro , --máx-tiempo . Establezca esta opción en cero para no reintentar el tiempo de espera. (Agregado en 7.12.3)

Si esta opción se usa varias veces, la última aparición decide la cantidad.
-s , --silencio Modo silencioso. No muestre el medidor de progreso ni los mensajes de error. Hace rizo silencio. Todavía envía los datos que solicita, potencialmente incluso al terminal / stdout a menos que lo redirija.
--sasl-ir Habilite la respuesta inicial en la autenticación SASL. (Agregado en 7.31.0)
-S , --show-error Cuando se usa con -s , hace rizo muestre el mensaje de error si falla.
--ssl ( FTP, POP3, IMAP, SMTP ) Intente utilizar SSL / TLS para la conexión. Vuelve a una conexión no segura si el servidor no admite SSL / TLS. Ver también --ftp-ssl-control y --ssl-reqd para diferentes niveles de encriptación requeridos. (Agregado en 7.20.0)

Esta opción se conocía anteriormente como --ftp-ssl (Agregado en 7.11.0). Ese nombre de opción aún se puede usar, pero se eliminará en una versión futura.
--ssl-reqd ( FTP, POP3, IMAP, SMTP ) Requiere SSL / TLS para la conexión. Termina la conexión si el servidor no es compatible con SSL / TLS. (Agregado en 7.20.0)

Esta opción se conocía anteriormente como --ftp-ssl-reqd (agregado en 7.15.5). Ese nombre de opción aún se puede usar, pero se eliminará en una versión futura.
--ssl-permitir-bestia ( SSL ) Esta opción dice rizo no evitar una falla de seguridad en los protocolos SSL3 y TLS1.0 conocidos como BEAST. Si no se usa esta opción, la capa SSL puede usar soluciones alternativas que se sabe que causan problemas de interoperabilidad con algunas implementaciones SSL más antiguas. ADVERTENCIA: esta opción afloja la seguridad SSL, y usando esta bandera, pides exactamente eso. (Agregado en 7.25.0)
--calcetines4 [ : Puerto ]> Utilice el proxy SOCKS4 especificado. Si no se especifica el número de puerto, se asume en el puerto 1080. (Agregado en 7.15.2)

Esta opción anula cualquier uso anterior de -x , --apoderado , ya que son mutuamente excluyentes.

Desde 7.21.7, esta opción es superflua ya que puede especificar un proxy socks4 con -x , --apoderado usando un calcetines4: // prefijo de protocolo.

Si esta opción se usa varias veces, se usa la última.
--socks4a [ : Puerto ]> Utilice el proxy SOCKS4a especificado. Si no se especifica el número de puerto, se asume en el puerto 1080. (Agregado en 7.18.0)

Esta opción anula cualquier uso anterior de -x , --apoderado , ya que son mutuamente excluyentes.

Desde 7.21.7, esta opción es superflua ya que puede especificar un proxy socks4a con -x , --apoderado usando un socks4a: // prefijo de protocolo.

Si esta opción se usa varias veces, se usa la última.
--socks5-nombre de host [ : Puerto ]> Utilice el proxy SOCKS5 especificado (y deje que el proxy resuelva el nombre de host). Si no se especifica el número de puerto, se asume en el puerto 1080. (Agregado en 7.18.0)

Esta opción anula cualquier uso anterior de -x , --apoderado , ya que son mutuamente excluyentes.

Desde 7.21.7, esta opción es superflua ya que puede especificar un proxy de nombre de host socks5 con -x , --apoderado usando un calcetines5h: // prefijo de protocolo.

Si esta opción se usa varias veces, se usa la última. (Esta opción fue previamente documentada erróneamente y utilizada como --calcetines sin el número adjunto.)
--calcetines5 [ : Puerto ]> Utilice el proxy SOCKS5 especificado, pero resuelva el nombre de host localmente. Si no se especifica el número de puerto, se asume en el puerto 1080.

Esta opción anula cualquier uso anterior de -x , --apoderado , ya que son mutuamente excluyentes.

Desde 7.21.7, esta opción es superflua ya que puede especificar un proxy socks5 con -x , --apoderado usando un calcetines5: // prefijo de protocolo.

Si esta opción se usa varias veces, se usa la última. (Esta opción fue previamente documentada erróneamente y utilizada como --calcetines sin el número adjunto.)

Esta opción (y --calcetines4 ) no funciona con IPV6, FTPS o LDAP.
--socks5-gssapi-service El nombre de servicio predeterminado para un servidor de socks es rcmd / server-fqdn. Esta opción le permite cambiarla.

Ejemplos:

--socks5 nombre-proxy --socks5-gssapi-service sockd

usaría sockd / proxy-name;

--socks5 nombre-proxy --socks5-gssapi-service sockd / real-name

usaría sockd / real-name para los casos en los que el proxy-name no coincide con el nombre principal.
--socks5-y-gssapi Como parte de la negociación de gssapi, se negocia un modo de protección. RFC 1961 dice en la sección 4.3 / 4.4 que debe protegerse, pero la implementación de referencia NEC no lo hace. La opción --socks5-y-gssapi permite el intercambio sin protección de la negociación del modo de protección. (Agregado en 7.19.4).
--stderr En su lugar, redirija todas las escrituras a stderr al archivo especificado. Si el nombre del archivo es simple ' - ', en su lugar se escribe en stdout.

Si esta opción se usa varias veces, se usa la última.
--tcp-nodelay Enciende el TCP_NODELAY opción. Ver el curl_easy_setopt página de manual para obtener detalles sobre esta opción. (Agregado en 7.11.2)
--tftp-blksize ( TFTP ) Configure la opción TFTP BLKSIZE (debe ser> 512). Este es el tamaño de bloque que curl intenta usar cuando transfiere datos hacia o desde un servidor TFTP. De forma predeterminada, se utilizan 512 bytes.

Si esta opción se usa varias veces, se usa la última.

(Agregado en 7.20.0)
--tlsauthtype
Establezca el tipo de autenticación TLS. Actualmente, la única opción admitida es 'SRP', para TLS-SRP (RFC 5054). Si --tlsuser y --tlspassword se especifican pero --tlsauthtype no es, entonces esta opción por defecto es 'SRP'. (Agregado en 7.21.4)
--tlsuser Establezca el nombre de usuario para usar con el método de autenticación TLS especificado con --tlsauthtype . Requiere eso --tlspassword también se establece. (Agregado en 7.21.4)
--tlspassword
Establezca la contraseña para usar con el método de autenticación TLS especificado con --tlsauthtype . Requiere eso --tlsuser también se establece. (Agregado en 7.21.4)
--tr-encoding ( HTTP ) Solicite una respuesta de codificación de transferencia comprimida utilizando uno de los algoritmos rizo admite y descomprime los datos mientras los recibe.

(Agregado en 7.21.6)
-t , --telnet-opción Pase las opciones al protocolo telnet. Las opciones admitidas son:

TType = Establece el tipo de terminal.

XDISPLOC = Establece la ubicación de la pantalla X.

NEW_ENV = Establece una variable de entorno.
-T , --subir archivo Esto transfiere el archivo local especificado a la URL remota. Si no hay una parte del archivo en la URL especificada, Curl agrega el nombre del archivo local. NOTA debes usar un trailing / en el último directorio para demostrar realmente rizo que no hay nombre de archivo o rizo piensa que su último nombre de directorio es el nombre de archivo remoto que debe usar. Es muy probable que esto provoque un error en la operación de carga. Si se usa en un servidor http (s), se usa el comando PUT.

Utilice el nombre de archivo ' - '(un solo guión) para usar stdin en lugar de un archivo determinado. Alternativamente, el nombre del archivo ' . '(un solo período) se puede especificar en lugar de' - 'para usar stdin en modo sin bloqueo para permitir la lectura de la salida del servidor mientras se carga stdin.

Puedes especificar uno -T para cada URL en la línea de comando. Cada -T + URL par especifica qué cargar y dónde. rizo también es compatible con el 'globbing' de la -T argumento, lo que significa que puede cargar varios archivos en una sola URL utilizando el mismo estilo de globbing de URL admitido en la URL, como este:

curl -T '{archivo1, archivo2}' http://www.uploadtothissite.com

o incluso

curl -T 'img [1-1000] .png' ftp://ftp.picturemania.com/upload/
--rastro Habilita un volcado de seguimiento completo de todos los datos entrantes y salientes, incluida la información descriptiva, en el archivo de salida dado. Usar ' - 'como nombre de archivo para que la salida se envíe a stdout.

Esta opción anula los usos anteriores de -v , --verboso o --trace-ascii .

Si esta opción se usa varias veces, se usa la última.
--trace-ascii Habilita un volcado de seguimiento completo de todos los datos entrantes y salientes, incluida la información descriptiva, en el archivo de salida dado. Usar ' - 'como nombre de archivo para que la salida se envíe a stdout.

Esto es muy similar a --rastro , pero omite la parte hexadecimal y solo muestra la parte ASCII del volcado. Produce una salida más pequeña que podría ser más fácil de leer para humanos no capacitados.

Esta opción anula los usos anteriores de -v , --verboso o --rastro .

Si esta opción se usa varias veces, se usa la última.
--trace-time Antepone una marca de tiempo a cada trazo o línea detallada que rizo muestra. (Agregado en 7.14.0)
-u , --usuario : contraseña> Especifique el usuario y la contraseña que se utilizarán para la autenticación del servidor. Anulaciones -norte , --netrc y --netrc-opcional .

Si da el nombre de usuario (sin ingresar dos puntos) rizo solicita una contraseña.

Si usa un SSPI habilitado rizo binario y hacer autenticación NTLM, puede forzar rizo para recoger el nombre de usuario y la contraseña de su entorno especificando dos puntos con esta opción: ' -u: '.

Si esta opción se usa varias veces, se usa la última.
-U , --proxy-user : contraseña> Especifique el usuario y la contraseña que se utilizarán para la autenticación de proxy.

Si usa un SSPI habilitado rizo binario y hacer autenticación NTLM, puede forzar rizo para recoger el nombre de usuario y la contraseña de su entorno especificando dos puntos con esta opción: ' -En: '.

Si esta opción se usa varias veces, se usa la última.
--url Especifique una URL para buscar. Esta opción es más útil cuando desea especificar URL (s) en un archivo de configuración.

Esta opción se puede utilizar tantas veces como desee. Para controlar dónde se escribe esta URL, utilice la -o , --producción o el -O , - opciones de nombre remoto .
-v , --verboso Hace que la búsqueda sea más verbosa / habladora. Principalmente utilizable para depuración. Líneas que comienzan con ' > 'significa' datos de encabezado 'enviados por rizo , ' < 'significa' datos de encabezado 'recibidos por rizo que está oculto en casos normales y líneas que comienzan con ' * 'significa información adicional proporcionada por rizo .

Tenga en cuenta que si solo desea encabezados HTTP en la salida, -I , --incluir podría ser la opción que estás buscando.

Si cree que esta opción aún no le brinda suficientes detalles, considere usar --rastro o --trace-ascii en lugar de.

Esta opción anula los usos anteriores de --trace-ascii o --rastro .

Usar -s , --silencio para hacer rizo tranquilo.
-en , --escribir
Define qué mostrar en stdout después de una operación completa y exitosa. El formato es una cadena que puede contener texto sin formato mezclado con cualquier número de variables. La cadena se puede especificar como ' cuerda ', para obtener la lectura de un archivo en particular, lo especifica' @Nombre del archivo 'y para decirle a curl que lea el formato de stdin que escribe' @- '.

Las variables presentes en el formato de salida se sustituyen por el valor o texto que rizo piensa que es adecuado, como se describe a continuación. Todas las variables se especifican como %{nombre de la variable} y para dar salida a un normal % los escribes como %% . Puede generar una nueva línea usando orte , un retorno de carro con r y un espacio de pestaña con t .

NOTA: La % -letter es una carta especial en el entorno win32, donde todas las apariciones de % debe duplicarse al usar esta opción.

Las variables disponibles son en este punto:

tipo de contenido

El tipo de contenido del documento solicitado, si lo hubiera.

filename_effective

El nombre de archivo definitivo que rizo escribe a. Esto solo es significativo si rizo se le dice que escriba en un archivo con el --nombre-remoto o --producción opción. Es más útil en combinación con el --remote-header-name opción. (Agregado en 7.25.1)

ftp_entry_path

El camino inicial rizo terminó al iniciar sesión en el servidor FTP remoto. (Agregado en 7.15.4)

http_code

El código de respuesta numérico que se encontró en la última transferencia HTTP (S) o FTP (s) recuperada. En 7.18.2 el alias código de respuesta se agregó para mostrar la misma información.

http_connect

El código numérico que se encontró en la última respuesta (de un proxy) a un rizo Solicitud CONNECT. (Agregado en 7.12.4)

local_ip

La dirección IP del extremo local de la conexión realizada más recientemente, puede ser IPv4 o IPv6 (agregada en 7.29.0)

puerto_local

El número de puerto local de la conexión realizada más recientemente (agregado en 7.29.0)

num_connects

Número de conexiones nuevas realizadas en la transferencia reciente. (Agregado en 7.12.3)

num_redirects

Número de redireccionamientos que se siguieron en la solicitud. (Agregado en 7.12.3)

Redireccionar URL

Cuando se realizó una solicitud HTTP sin -L para seguir las redirecciones, esta variable muestra la URL real a la que te llevaría una redirección. (Agregado en 7.18.2)

IP remota

La dirección IP remota de la conexión realizada más recientemente, puede ser IPv4 o IPv6 (agregada en 7.29.0)

Puerto remoto

El número de puerto remoto de la conexión realizada más recientemente (agregado en 7.29.0)

size_download

La cantidad total de bytes que se descargaron.

size_header

La cantidad total de bytes de los encabezados descargados.

size_request

La cantidad total de bytes que se enviaron en la solicitud HTTP.

size_upload

La cantidad total de bytes que se cargaron.

speed_download

La velocidad de descarga promedio que rizo medido para la descarga completa. Bytes por segundo.

speed_upload

La velocidad de carga promedio que rizo medido para la carga completa. Bytes por segundo.

ssl_verify_result

El resultado de la verificación del certificado de pares SSL que se solicitó. 0 significa que la verificación se realizó correctamente. (Agregado en 7.19.0)

time_appconnect

El tiempo, en segundos, que tomó desde el inicio hasta que se completó la conexión / protocolo de enlace SSL / SSH / etc con el host remoto. (Agregado en 7.19.0)

time_connect

El tiempo, en segundos, que tomó desde el inicio hasta que se completó la conexión TCP al host remoto (o proxy).

time_namelookup

El tiempo, en segundos, que tomó desde el inicio hasta que se completó la resolución del nombre.

time_pretransfer

El tiempo, en segundos, que tomó desde el inicio hasta que la transferencia de archivos estuvo a punto de comenzar. Esto incluye todos los comandos y negociaciones previos a la transferencia que son específicos de los protocolos en particular involucrados.

time_redirect

El tiempo, en segundos, que tomó para todos los pasos de redirección, incluida la búsqueda de nombre, la conexión, la transferencia previa y la transferencia antes de que se iniciara la transacción final. time_redirect muestra el tiempo de ejecución completo para múltiples redirecciones. (Agregado en 7.12.3)

time_starttransfer

El tiempo, en segundos, que tomó desde el inicio hasta que el primer byte estuvo a punto de ser transferido. Esto incluye time_pretransfer y también el tiempo que el servidor necesitó para calcular el resultado.

time_total

El tiempo total, en segundos, que duró la operación completa. El tiempo se muestra con una resolución de milisegundos.

url_effective

La URL que se obtuvo en último lugar. Esto es más significativo si le has dicho rizo seguir localización: encabezados.
-x , --apoderado
<[protocol://][user:password
@] proxyhost [: puerto]>
Utilice el proxy HTTP especificado. Si no se especifica el número de puerto, se asume en el puerto 1080.

Esta opción anula las variables de entorno existentes que configuran el proxy para su uso. Si hay una variable de entorno que configura un proxy, puede configurar el proxy para '' para anularlo.

Todas las operaciones que se realizan a través de un proxy HTTP se convierten de forma transparente a HTTP. Significa que es posible que algunas operaciones específicas del protocolo no estén disponibles. Este no es el caso si puede hacer un túnel a través del proxy, como uno con el -pag , - túnel proxy opción.

El usuario y la contraseña que se pueden proporcionar en la cadena de proxy son decodificados por URL rizo . Esto le permite pasar caracteres especiales, como @ , usando% 40 o páselo en dos puntos con% 3a.

El host proxy se puede especificar exactamente de la misma manera que las variables de entorno del proxy, incluido el prefijo de protocolo (http: //) y el usuario integrado. + contraseña.

Desde 7.21.7, la cadena de proxy se puede especificar con un protocolo:// prefijo para especificar protocolos de proxy alternativos. Usar calcetines4: // , socks4a: // , calcetines5: // o calcetines5h: // para solicitar la versión específica de SOCKS a utilizar. Sin protocolo especificado, http:// y todos los demás se tratan como proxies HTTP.

Si esta opción se usa varias veces, se usa la última.
-X , --pedido
( HTTP ) Especifica un método de solicitud personalizado para usar cuando se comunica con el servidor HTTP. La solicitud especificada se usa en lugar del método que se usa de otro modo (que por defecto es GET). Lea la especificación HTTP 1.1 para obtener detalles y explicaciones. Las solicitudes HTTP adicionales comunes incluyen PONER y ELIMINAR , pero tecnologías relacionadas como WebDAV ofrece PROPFIND , COPIAR , MOVERSE , y más.

Normalmente no necesita esta opción. Todo tipo de solicitudes GET, HEAD, POST y PUT se invocan utilizando opciones de línea de comandos dedicadas.

Esta opción solo cambia la palabra real utilizada en la solicitud HTTP, no altera la forma en que se comporta curl. Entonces, por ejemplo, si desea realizar una solicitud HEAD adecuada, use -X HEAD no es suficiente. Necesitas usar el -I , --cabeza opción.

( FTP ) Especifica un comando FTP personalizado para usar en lugar de LIST al hacer listas de archivos con FTP.

Si esta opción se usa varias veces, se usa la última.
--xattr Al guardar la salida en un archivo, esta opción le dice rizo para almacenar ciertos metadatos de archivo en atributos de archivo extendidos. Actualmente, la URL se almacena en el xdg.origin.url atributo y, para HTTP, el tipo de contenido se almacena en el tipo de Mimica atributo. Si el sistema de archivos no admite atributos extendidos, se emite una advertencia.
-y , --Tiempo de velocidad Si una descarga es más lenta que Límite de velocidad bytes por segundo durante un Tiempo de velocidad período, la descarga se aborta. Si Tiempo de velocidad se utiliza, el valor predeterminado Límite de velocidad es 1 a menos que se establezca con -Y .

Esta opción controla las transferencias y, por lo tanto, no afectará a las conexiones lentas, etc. Si esto le preocupa, pruebe la --connect-timeout opción.

Si esta opción se usa varias veces, se usa la última.
-Y , --Límite de velocidad Si una descarga es más lenta que esta velocidad dada, en bytes por segundo, por Tiempo de velocidad segundos se aborta. Tiempo de velocidad está configurado con -y y es 30 si no se establece.

Si esta opción se usa varias veces, se usa la última.
-con , --time-cond | (HTTP) Solicita un archivo que se modificó después de la fecha y hora indicadas, o uno que se modificó antes de esa hora. La puede ser todo tipo de cadenas de fecha o si no coincide con ninguna interna, se toma como un nombre de archivo e intenta obtener la fecha de modificación (mtime) de en lugar de. Ver el curl_getdate páginas de manual para obtener detalles sobre la expresión de fecha.

Inicie la expresión de fecha con un guión (-) para solicitar un documento que sea más antiguo que la fecha / hora indicadas, el valor predeterminado es un documento que es más nuevo que la fecha / hora especificada.

Si esta opción se usa varias veces, se usa la última.
--max-redirs Establezca el número máximo de redirecciones que se pueden seguir. Si -L / --localización se utiliza, esta opción puede evitar rizo de seguir redirecciones 'in absurdum'. De forma predeterminada, el límite está establecido en 50 redirecciones. Establezca esta opción en -1 para hacerlo ilimitado.

Si esta opción se usa varias veces, se usa la última.
-0 , --http1.0 ( HTTP ) Fuerzas rizo para emitir sus solicitudes utilizando HTTP 1.0 en lugar de utilizar su preferido internamente: HTTP 1.1.
-1 , --tlsv1 ( SSL ) Fuerzas rizo para utilizar TSL versión 1 al negociar con un servidor TLS remoto.
-2 , --sslv2 ( SSL ) Fuerzas rizo utilizar SSL versión 2 al negociar con un servidor SSL remoto.
-3 , --sslv3 ( SSL ) Fuerzas rizo utilizar SSL versión 3 al negociar con un servidor SSL remoto.
--3p-cotización ( FTP ) Especifique comandos arbitrarios para enviar al servidor de origen. Ver el -Q , --cita opción para más detalles. (Agregado en 7.13.0)
--3p-url ( FTP ) Activa una transferencia FTP de terceros. Especifica la URL de origen para obtener un archivo, mientras que la URL 'normal' se utilizará como URL de destino, el archivo que se escribirá / creará.

Tenga en cuenta que no todos los servidores FTP permiten transferencias de terceros. (Agregado en 7.13.0)
--3p-usuario ( FTP ) Especificar contraseña de usuario para la transferencia de URL de origen. (Agregado en 7.13.0)
-4 , --ipv4 Si libcurl es capaz de resolver una dirección en múltiples versiones de IP (que es si es compatible con ipv6), esta opción le dice a libcurl que resuelva nombres solo en direcciones IPv4.
-6 , --ipv6 Si libcurl es capaz de resolver una dirección en múltiples versiones de IP (que es si es compatible con ipv6), esta opción le dice a libcurl que resuelva nombres solo en direcciones IPv6.
-# , --barra de progreso Fabricar rizo muestra la información de progreso como una barra de progreso en lugar de las estadísticas predeterminadas.

Si esta opción se usa dos veces, la segunda deshabilita nuevamente la barra de progreso.

URLs

La URL sintaxis depende del protocolo. Encontrarás una descripción detallada en RFC 3986 .

cómo habilitar donaciones en twitch

Puede especificar varias URL o partes de URL escribiendo conjuntos de partes entre llaves como en:

http: // sitio. {uno, dos, tres} .com



o puede obtener secuencias de series alfanuméricas usando [] como en:

ftp://ftp.numericals.com/file[1-100].txt
ftp://ftp.numericals.com/file[001-100].txt
ftp://ftp.letters.com/file[a-z].txt

Las secuencias anidadas no son compatibles, pero puede usar varias una al lado de la otra:



limpiar la computadora limpia windows 7

http://any.org/archive[1996-1999]/vol[1-4]/part{a,b,c}.html

Puede especificar cualquier cantidad de URL en la línea de comando. Se obtienen de forma secuencial en el orden especificado.

Puede especificar un contador de pasos para que los rangos obtengan cada enésimo número o letra:

http://www.numericals.com/file[1-100:10].txt
http://www.letters.com/file[a-z:2].txt

Si especifica una URL sin protocolo:// prefijo, rizo intenta adivinar qué protocolo podría querer. A continuación, utiliza HTTP de forma predeterminada, pero pruebe con otros protocolos basados ​​en los prefijos de nombre de host de uso frecuente. Por ejemplo, para nombres de host que comienzan con 'ftp'. rizo asume que quiere hablar FTP.

rizo hace todo lo posible para utilizar lo que le pasa como una URL. No está tratando de validarlo como una URL sintácticamente correcta de ninguna manera, sino que es muy liberal con lo que acepta.

rizo intenta reutilizar conexiones para múltiples transferencias de archivos, de modo que obtener muchos archivos del mismo servidor no haga múltiples conexiones / apretones de manos. Esto mejora la velocidad. Por supuesto, esto solo se hace en archivos especificados en una sola línea de comando y no se puede usar entre rizo invoca.

Medidor de progreso

rizo normalmente muestra un medidor de progreso durante las operaciones, que indica la cantidad de datos transferidos, velocidades de transferencia y tiempo restante estimado, etc.

rizo muestra estos datos en el terminal de forma predeterminada, por lo que si invoca rizo hacer una operación y está a punto de escribir datos al terminal, deshabilita el medidor de progreso ya que de lo contrario estropearía la salida mezclando el medidor de progreso y los datos de respuesta.

Si desea un medidor de progreso para las solicitudes HTTP POST o PUT, debe redirigir la salida de respuesta a un archivo, utilizando la redirección de shell ( > ), -o [expediente] o similar.

cómo encontrar descargas recientes en Windows 10

No es el mismo caso para la carga FTP, ya que esa operación no arroja ningún dato de respuesta al terminal.

Si prefiere una 'barra' de progreso en lugar del medidor normal, -# es tu amigo.

Variables de entorno

La Variables de entorno se puede especificar en minúscula o mayúsculas . La versión en minúsculas tiene prioridad. http_proxy es una excepción ya que solo está disponible en minúsculas.

Usar una variable de entorno para configurar el proxy tiene el mismo efecto que usar el --apoderado opción.

http_proxy [ protocolo :// ] [ : Puerto ] Configura el servidor proxy que se utilizará para HTTP.
HTTPS_PROXY [ protocolo :// ] [ : Puerto ] Establece el servidor proxy que se utilizará para HTTPS.
[ protocolo de URL ] _APODERADO [ protocolo :// ] [ : Puerto ] Configura el servidor proxy que se utilizará para [ protocolo de URL ], donde el protocolo es un protocolo que rizo admite y como se especifica en una URL: FTP , FTPS , POP3 , IMAP , SMTP , LDAP etc.
ALL_PROXY [ protocolo :// ] [ : Puerto ] Establece el servidor proxy que se utilizará si no se establece ningún proxy específico del protocolo.
NO_PROXY
Lista de nombres de host que no deberían pasar por ningún proxy. Si se establece en un asterisco ' * 'solo, coincide con todos los hosts.

Códigos de salida

Hay un montón de códigos de error diferentes y sus correspondientes mensajes de error que pueden aparecer durante malas condiciones. En el momento de escribir este artículo, los códigos de salida son:

1 Protocolo no admitido. Esta construcción de curl no es compatible con este protocolo.
2 No se pudo inicializar.
3 URL con formato incorrecto. La sintaxis no es correcta.
4 Una función u opción que se necesitaba para realizar la solicitud deseada no se habilitó o se deshabilitó explícitamente en el momento de la compilación. Para que curl pueda hacer esto, ¡probablemente necesite otra compilación de libcurl!
5 No se pudo resolver el proxy. No se pudo resolver el host de proxy proporcionado.
6 No se pudo resolver el host. El host remoto proporcionado no se resolvió.
7 No se pudo conectar al host.
8 Respuesta extraña del servidor FTP. El servidor envió datos que curl no pudo analizar.
9 Acceso FTP denegado. El servidor denegó el inicio de sesión o el acceso al recurso o directorio en particular al que deseaba acceder. La mayoría de las veces intentó cambiar a un directorio que no existe en el servidor.
11 Respuesta de FTP extraña de PASS. Curl no pudo analizar la respuesta enviada a la solicitud PASS.
13 Respuesta extraña de FTP a PASV, Curl no pudo analizar la respuesta enviada a la solicitud de PASV.
14 FTP extraño formato 227. Curl no pudo analizar la línea 227 que envió el servidor.
15 FTP no puede obtener el host. No se pudo resolver la IP de host que obtuvimos en la línea 227.
17 FTP no pudo establecer binario. No se pudo cambiar el método de transferencia a binario.
18 Archivo parcial. Solo se transfirió una parte del archivo.
19 FTP no pudo descargar / acceder al archivo dado, el comando RETR (o similar) falló.
21 Error de cotización de FTP. Un comando de cotización devolvió un error del servidor.
22 Página HTTP no recuperada. La URL solicitada no se encontró o arrojó otro error con el código de error HTTP 400 o superior. Este código de retorno solo aparece si -F , --fallar se utiliza.
23 Error de escritura. Curl no pudo escribir datos en un sistema de archivos local o similar.
25 FTP no pudo ALMACENAR el archivo. El servidor denegó la operación STOR, utilizada para la carga FTP.
26 Error de lectura. Varios problemas de lectura.
27 Sin memoria. Falló una solicitud de asignación de memoria.
28 Tiempo de expiración de operación. El período de tiempo de espera especificado se alcanzó de acuerdo con las condiciones.
30 PUERTO FTP falló. El comando PORT falló. No todos los servidores FTP admiten el comando PORT, ¡intente realizar una transferencia utilizando PASV!
31 FTP no pudo usar REST. El comando REST falló. Este comando se utiliza para reanudar las transferencias FTP.
33 Error de rango HTTP. El 'comando' de rango no funcionó.
34 Error de publicación HTTP. Error interno de generación de post-solicitud.
35 Error de conexión SSL. El protocolo de enlace SSL falló.
36 Resumen de descarga de FTP incorrecto. No se pudo continuar con una descarga anulada anterior.
37 ARCHIVO no pudo leer el archivo. No se pudo abrir el archivo. Permisos?
38 LDAP no se puede enlazar. Error en la operación de enlace LDAP.
39 Error en la búsqueda LDAP.
41 Función no encontrada. No se encontró una función LDAP requerida.
42 Anulado por devolución de llamada. Una aplicación le dijo a curl que abortara la operación.
43 Error interno. Se llamó a una función con un parámetro incorrecto.
45 Error de interfaz. No se pudo utilizar una interfaz de salida especificada.
47 Demasiados redireccionamientos. Al seguir las redirecciones, curl alcanza la cantidad máxima.
48 Opción desconocida especificada para libcurl. Esto indica que pasó una opción extraña para curl que se pasó a libcurl y se rechazó. ¡Lee el manual!
49 Opción de telnet con formato incorrecto.
51 El certificado SSL del par o la huella digital SSH MD5 no estaban bien.
52 El servidor no respondió nada, lo que aquí se considera un error.
53 No se encontró el motor de cifrado SSL.
54 No se puede configurar el motor de cifrado SSL como predeterminado.
55 Error al enviar datos de red.
56 Falla en la recepción de datos de la red.
58 Problema con el certificado local.
59 No se pudo utilizar el cifrado SSL especificado.
60 El certificado de pares no se puede autenticar con certificados de CA conocidos.
61 Codificación de transferencia no reconocida.
62 URL LDAP no válida.
63 Se superó el tamaño máximo de archivo.
64 Error en el nivel de SSL de FTP solicitado.
65 El envío de datos requiere un rebobinado que falló.
66 No se pudo inicializar el motor SSL.
67 No se aceptó el nombre de usuario, contraseña o similar y curl no pudo iniciar sesión.
68 Archivo no encontrado en el servidor TFTP.
69 Problema de permisos en el servidor TFTP.
70 No hay espacio en disco en el servidor TFTP.
71 Operación ilegal de TFTP.
72 ID de transferencia TFTP desconocido.
73 El archivo ya existe (TFTP).
74 No existe tal usuario (TFTP).
75 Error en la conversión de caracteres.
76 Se requieren funciones de conversión de caracteres.
77 Problema al leer el certificado de CA SSL (¿ruta? ¿Derechos de acceso?).
78 El recurso al que se hace referencia en la URL no existe.
79 Se produjo un error no especificado durante la sesión SSH.
80 No se pudo cerrar la conexión SSL.
82 No se pudo cargar el archivo CRL, falta el formato o es incorrecto (agregado en 7.19.0).
83 La verificación del emisor falló (agregado en 7.19.0).
84 El comando FTP PRET falló.
85 RTSP: desajuste de números CSeq.
86 RTSP: falta de coincidencia de identificadores de sesión.
87 No se puede analizar la lista de archivos FTP.
88 Error informado de devolución de llamada de fragmento de FTP.

Ejemplos de

|_+_|

Recuperar el archivo index.htm de www.computerhope.com utilizando la HTTP protocolo y mostrarlo en la salida estándar. Esto es esencialmente lo mismo que 'ver la fuente' de la página web; se muestra el HTML sin procesar.

|_+_|

Obtenga el mismo archivo que el anterior, pero redirija la salida a un archivo, index.htm , en el directorio actual.

|_+_|

Obtenga el mismo archivo que el anterior y envíelo a un archivo con el mismo nombre ( index.htm ) en el directorio actual, esta vez usando la función curl -O .

cómo buscar en el historial de youtube
|_+_|

Igual que arriba, pero esta vez, limite la velocidad de descarga a (una velocidad promedio de) 1234 bytes / segundo.

|_+_|

Igual que arriba, pero esta vez, muestra una barra de progreso (la -# opción) en lugar del medidor de progreso numérico.

wget - Descarga de archivos a través de HTTP o FTP.