Atualmente, o compartilhamento de arquivos é mais fácil do que nunca. Entre o Dropbox, o Google Drive, o OneDrive etc., levar as coisas de um lugar para outro funciona muito rápido - a menos que você esteja usando o terminal. Se você estiver usando o Terminal, é provável que ainda esteja obtendo arquivos pelo SFTP, ou algo igualmente arcaico. Apresentando o TransferSH: uma ferramenta de compartilhamento de arquivos projetada especificamente para permitir o upload e o compartilhamento de arquivos do Terminal Linux.
ALERTA DE SPOILER: Role para baixo e assista ao tutorial em vídeo no final deste artigo.
Usando Transfer.sh manualmente
Transferir.sh possui uma interface da web e você pode carregar e compartilhar arquivos do seu navegador. O serviço também trabalha com a linha de comando para que você possa compartilhar um arquivo diretamente através do terminal. Para compartilhar arquivos do terminal Linux usando Transfer.sh, você precisa do Curl.
Ubuntu
sudo apt install curl
Debian
sudo apt-get install curl
Arch Linux
sudo pacman -S curl
Fedora
sudo dnf install curl
OpenSUSE
sudo zypper install curl
Outros Linux
Usuários de distribuições Linux não convencionaisnão deve ter muita dificuldade para encontrar o programa Curl, devido à sua ampla disponibilidade. Para obtê-lo, basta abrir o seu gerenciador de pacotes, procurar por "curl" e instalá-lo! Se, por algum motivo, não estiver disponível para você, faça o download aqui.
Usando o enrolamento para fazer upload
Interagir com transfer.sh usando curl requer um comando bastante longo. Aqui está como isso funciona.
Primeiro, encontre um arquivo no seu sistema de arquivos para fazer o upload. Use “find” ou “find” no seu terminal (ou vá para o gerenciador de arquivos, encontre o arquivo e anote onde ele está). Depois de anotar onde está o arquivo que você está tentando enviar, use o comando cd para ir até lá. Neste exemplo, carregaremos "test.mp3" da pasta Documentos.
cd ~/Documents
O terminal está agora no diretório em que test.mp3 é. Agora, use este comando "fórmula" para fazer upload do arquivo. Esta é a primeira parte do comando:
curl --upload-file ./test.mp3
O próximo passo é criar uma URL para o transfer.sh usar. Lembre-se do nome do arquivo (assim como da extensão) e escreva-o assim:
https://transfer.sh/test.mp3
O resultado final deve ficar assim;
curl --upload-file ./test.mp3 https://transfer.sh/test.mp3
O Curl enviará o arquivo para Transfer.sh e retornará um URL. Abra o URL para baixar o arquivo ou envie para quem você deseja compartilhar o arquivo.
Alias do terminal Transfer.sh
Carregar manualmente com o Curl pode tirar você de umlocal apertado, mas não é perfeito. Não há indicação de que o upload esteja funcionando, quanto de um arquivo foi enviado, e lembrar uma frase apenas para enviar algo é muito entediante. É por isso, o desenvolvedor fez um alias do Bash. Esse alias do bash, quando configurado, permitirá ao usuário fazer upload de arquivos e pastas facilmente, com uma única palavra.
Para configurá-lo, abra seu arquivo BashRC. Entenda que o arquivo BashRC de cada usuário individual deve ser modificado para usar esse alias.
nano ~/.bashrc
Usando o Nano, vá até o final do arquivo. Em seguida, cole o código Transfer SH Alias. Certifique-se de colar todos os bits do código, ou o alias do bash não funcionará.
Nota: colar usando o Nano através da área de transferência pode ser feito com CTRL + SHIFT + V.
transfer() { # check arguments if [ $# -eq 0 ]; then echo "No arguments specified. Usage:necho transfer /tmp/test.mdncat /tmp/test.md | transfer test.md" return 1 fi # get temporarily filename, output is written to this file show progress can be showed tmpfile=$( mktemp -t transferXXX ) # upload stdin or file file=$1 if tty -s; then basefile=$(basename "$file" | sed -e "s/[^a-zA-Z0-9._-]/-/g") if [ ! -e $file ]; then echo "File $file doesn"t exists." return 1 fi if [ -d $file ]; then # zip directory and transfer zipfile=$( mktemp -t transferXXX.zip ) cd $(dirname $file) && zip -r -q - $(basename $file) >> $zipfile curl --progress-bar --upload-file "$zipfile" "https://transfer.sh/$basefile.zip" >> $tmpfile rm -f $zipfile else # transfer file curl --progress-bar --upload-file "$file" "https://transfer.sh/$basefile" >> $tmpfile fi else # transfer pipe curl --progress-bar --upload-file "-" "https://transfer.sh/$file" >> $tmpfile fi # cat output link cat $tmpfile echo "" # cleanup rm -f $tmpfile }
Após colar a longa quantidade de código no arquivo ~ / .bashrc arquivo, salve o nano com CTRL + O. Reinicie o seu PC para que as edições entrem em vigor.
Usando o alias do terminal para fazer upload
Carregar com o alias TransferSH é muito mais fácil do que usar o Curl manualmente. Neste exemplo, usaremos novamente test.mp3 e a pasta Documents.
Passo 1: navegue no terminal para onde está o arquivo / pasta que você deseja enviar.
cd ~/Documents
Passo 2: inicie o processo de upload.
transfer test.mp3
ou, para uma pasta, faça:
transfer file_folder
Etapa 3: Aguarde o terminal fazer o upload do arquivo. Uma barra de progresso atravessará a tela e emitirá um link para download quando concluída.
Fazendo o download com o Curl
Curl é mais do que apenas uma ferramenta de upload. Também é uma ferramenta de download. Para baixar um arquivo carregado por transfer.sh, siga estas instruções.
Primeiro, copie o link de download fornecido pela ferramenta de upload e mantenha-o na área de transferência. Em seguida, faça o download:
curl https://transfer.sh/vN79X/test.zip > test.zip
Certifique-se de reescrever o nome do arquivo após > para o link do download. É isso que os nomes de onda do download no seu PC. É possível alterar o nome, mas não o recomendamos.
Baixando com o Wget
Apesar da popularidade do Curl, algumas pessoas recusamusá-lo como parece complicado e, em vez disso, optar por usar o download do Wget também. Faz sentido, pois o Wget é muito direto. Assim como a ferramenta Curl, o Wget também pode baixar facilmente os links Transfer SH. Veja como:
wget https://transfer.sh/vN79X/test.zip
Conclusão
Isso não acontece com frequência, mas às vezestrabalhando em um servidor, você pode precisar de acesso rápido a um arquivo de outro computador. Configurar o SSH, fazer login no FTP etc., é entediante. É por isso que o TransferSH é uma ferramenta tão útil. Isso facilita a captura de arquivos de qualquer tamanho diretamente da linha de comando.
Comentários