- - Como fazer upload e compartilhar arquivos do terminal Linux com Transfer.sh

Como fazer upload e compartilhar arquivos do terminal Linux com Transfer.sh

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