O comando curl
- Gustavo Viana
- Linux
- 19 de maio de 2022
O curl é uma ferramenta para transferir ou receber dados de um servidor. São suportados diversos protocolos: O mais utilizado é o http/https mas também há a possibilidade de realizar operações com os protocolos SMB, FILE, FTP, TFTP e SCP, por exemplo.
Opções mais importantes
Parâmetro | Descrição |
---|---|
-k ou –insecure | Procede com conexões, mesmo que haja problemas no certificado, ignorando-os |
-O | Realiza o download do conteúdo da URL e grava-o com o mesmo nome |
-o [nome-do-arquivo] | Realiza o download do conteúdo e grava-o com o nome-do-arquivo definido |
-I ou –head | Visualizar apenas o cabeçalho de resposta HTTP |
-u [usuario]:[senha] | Realizar a requisição utilizando autenticação |
-s | Silent Mode, não mostra barra de progresso ou erros |
-d | Dados a serem enviados (request POST) |
-X [tipo-de-request] | Tipo de request (caso haja a opção -d a request é automaticamente POST) |
-L | Seguir qualquer redirecionamento |
-m [tempo] | Timeout para a requisição (em milisegundos) |
Exemplos de uso
1 | Requisição HTTP GET
curl https://site-de-exemplo.com.br/
2 | Requisição HTTP POST
curl https://site-de-exemplo.com.br/arquivo.php -d 'comando=whoami'
3 | Requisição HTTP POST contendo payload JSON
curl https://site-de-exemplo.com.br/json-login -H 'Content-Type: application/json' -d '{"usuario":"iron","senha":"linux"}'
4 | Visualizar apenas o HTTP Response Header
curl --head https://site-de-exemplo.com.br/
5 | Curl utilizando o protocolo FILE
No exemplo abaixo temos o arquivo.txt dentro do diretório /tmp local:
curl file:///tmp/arquivo.txt
6 | Curl utilizando o protocolo FTP
curl -u iron ftp://192.168.0.215
7 | Curl utilizando o protocolo FTP (Senha no comando)
curl -u iron:SenhaSegura ftp://192.168.0.215/arquivo.txt
8 | Upload de arquivos via FTP
curl -T arquivo.zip -u iron:SenhaSegura ftp://192.168.0.215
9 | Upload de arquivos via SMB
curl -T arquivo.txt -u "DOMINIO\usuario:senha" smb://192.168.0.215/publico/
10 | Download de arquivos via SMB
curl -u "DOMINIO\usuario:senha" smb://192.168.0.215/publico/arquivo.txt
Por fim, agradecemos a leitura e esperamos que este post tenha te ajudado de alguma maneira! Caso tenha alguma dúvida, entre em contato conosco pelo Telegram , Facebook ou Instagram ! Veja mais posts no IronLinux !