### Wormhole
O **wormhole** é uma ferramenta de linha de comando que permite transferir arquivos e dados de forma segura e simples entre dispositivos através da internet, sem necessidade de configurações complexas de rede ou contas em serviços de nuvem.
Exemplo:
```shell
wormhole send file
```
```shell
wormhole receive 9-savagery-gremlin
```
### Transfer.sh
Serviço web público para compartilhamento temporário de arquivos. Simples como fazer um curl e receber uma URL para compartilhar. Ideal para sharing rápido com pessoas que não têm acesso técnico avançado. Os arquivos ficam disponíveis por tempo limitado e podem ser acessados via browser.
```shell
# Upload
curl --upload-file arquivo.txt https://transfer.sh/arquivo.txt
# Download
curl https://transfer.sh/codigo/arquivo.txt
```
### DD via Rede
Ferramenta de baixo nível para cópia bit-a-bit de dados. Quando combinada com netcat, permite clonar discos inteiros pela rede. É a escolha para imaging forense, backup de partições completas ou quando você precisa de controle total sobre a transferência de dados binários.
```shell
# Receptor
nc -l 1234 | dd of=imagem.img
# Emissor
dd if=/dev/sda | nc ip_destino 1234
```
### Curl
Cliente HTTP/HTTPS versátil para transferência de dados. Suporta múltiplos protocolos (HTTP, FTP, SFTP, etc.) e é altamente configurável. Essencial para APIs, downloads automatizados e integração com serviços web. É a ferramenta padrão para interagir com APIs REST e fazer downloads via linha de comando.
```shell
# Upload via POST
curl -X POST -F "
[email protected]" http://servidor/upload
# Download
curl -O http://servidor/arquivo.txt
```
### Python
Servidor HTTP instantâneo usando Python. Transforma qualquer diretório em um servidor web temporário. Extremamente útil para compartilhar arquivos rapidamente em rede local ou para debugging. É a solução mais rápida quando você precisa disponibilizar arquivos via HTTP sem configurar um servidor web completo.
```shell
# Servidor (Python 3)
python3 -m http.server 8000
# Servidor (Python 2)
python -m SimpleHTTPServer 8000
# Cliente
curl -O http://ip_servidor:8000/arquivo.txt
wget http://ip_servidor:8000/arquivo.txt
```
### RSync
A ferramenta definitiva para sincronização e backup. Transfere apenas as diferenças entre arquivos (delta sync), tornando-a muito eficiente para atualizações incrementais. Suporta compressão, preserva permissões e pode retomar transferências interrompidas. Essencial para backups automatizados e sincronização de grandes volumes de dados.
```shell
rsync -avz arquivo.txt user@servidor:/destino/
rsync -avz --progress pasta/ user@servidor:/destino/
rsync -avz user@servidor:/origem/ ./destino/
```
### SCP
Protocolo padrão para cópia segura de arquivos via SSH. É confiável, criptografado e amplamente suportado. Funciona bem para transferências pontuais entre servidores conhecidos. A sintaxe é similar ao comando `cp`, facilitando a adoção. Ideal para ambientes corporativos onde você já tem acesso SSH configurado.
```shell
scp arquivo.txt user@servidor:/caminho/destino/
scp -r pasta/ user@servidor:/destino/
scp user@servidor:/arquivo.txt ./
```
### Ruby
Ruby é uma linguagem de programação dinâmica, orientada a objetos, conhecida por sua simplicidade e produtividade. Uma das funcionalidades embutidas no Ruby é a capacidade de iniciar um servidor HTTP básico usando a biblioteca padrão `WEBrick`, que permite compartilhar arquivos e lidar com requisições web diretamente pela linha de comando, sem necessidade de instalações adicionais.
```
ruby -run -e httpd . -p 80
```
^7f57ae