### 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