- - Come caricare e condividere file dal terminale Linux con Transfer.sh

Come caricare e condividere file dal terminale Linux con Transfer.sh

In questi giorni, la condivisione di file è più semplice che mai. Tra Dropbox, Google Drive, OneDrive ecc., Trasferire le cose da un luogo all'altro funziona abbastanza velocemente, a meno che tu non stia utilizzando il terminale. Se stai usando il Terminale, è probabile che tu stia ancora ottenendo file su SFTP o qualcosa di altrettanto arcaico. Presentazione di TransferSH: uno strumento di condivisione file progettato appositamente per consentire di caricare e condividere file dal terminale Linux.

AVVISO SPOILER: Scorri verso il basso e guarda il video tutorial alla fine di questo articolo.

Utilizzo manuale di Transfer.sh

Trasferimento.sh ha un'interfaccia web e puoi caricare e condividere file dal tuo browser. Il servizio funziona anche con la riga di comando in modo da poter condividere un file direttamente tramite il terminale. Per condividere file dal terminale Linux utilizzando Transfer.sh, è necessario 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

Altri Linux

Utenti di distribuzioni Linux non tradizionalinon dovrebbe avere troppi problemi a trovare il programma Curl, a causa della sua ampia disponibilità. Per ottenerlo, basta aprire il gestore dei pacchetti, cercare "arricciatura" e installarlo! Se per qualche motivo non è disponibile per te, scaricalo qui.

Utilizzo dell'arricciatura per caricare

L'interazione con transfer.sh usando curl richiede un comando piuttosto lungo. Ecco come funziona.

Innanzitutto, trova un file sul tuo file system da caricare. Usa "trova" o "trova" nel tuo terminale (oppure vai al file manager, trova il file e prendi nota di dove si trova). Dopo aver preso nota di dove si trova il file che stai tentando di caricare, usa il comando cd per andare lì. In questo esempio, verrà caricato "test.mp3" dalla cartella Documenti.

cd ~/Documents

Il terminale è ora nella directory dove test.mp3 è. Ora, usa questo comando "formula" per caricare il file. Questa è la prima parte del comando:

 curl --upload-file ./test.mp3

Il prossimo passo è creare un URL da usare per transfer.sh. Tieni presente il nome del file (così come l'estensione) e scrivilo in questo modo:

https://transfer.sh/test.mp3

Il risultato finale dovrebbe apparire così;

curl --upload-file ./test.mp3 https://transfer.sh/test.mp3

Curl invierà il file a Transfer.sh e restituirà un URL. Apri l'URL per scaricare il file o invialo a chiunque desideri condividere il file.

Transfer.sh Alias ​​terminale

Il caricamento manuale con Curl può farti uscire da apunto stretto, ma non è perfetto. Non vi è alcuna indicazione che il caricamento funzioni, la quantità di file che è stata caricata e ricordare una frase solo per caricare qualcosa è abbastanza noioso. È per questo motivo che lo sviluppatore ha creato un alias Bash. Questo alias bash, quando impostato, darà all'utente la possibilità di caricare facilmente file e cartelle, con una sola parola.

Per configurarlo, apri il tuo file BashRC. Tieni presente che il file BashRC di ogni singolo utente deve essere modificato per utilizzare questo alias.

nano ~/.bashrc

Usando Nano, vai alla fine del file. Quindi, incolla il codice Transfer SH Alias. Assicurati di incollare ogni singolo bit del codice, altrimenti l'alias bash non funzionerà.

Nota: è possibile incollare utilizzando Nano tramite gli Appunti CTRL + MAIUSC + 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
}

Dopo aver incollato la lunga quantità di codice su ~ / .Bashrc file, salva nano con CTRL + O. Riavvia il PC in modo che le modifiche diventino effettive.

Utilizzando Terminal Alias ​​per caricare

Il caricamento con l'alias TransferSH è molto più semplice rispetto all'utilizzo dell'Arricciatura manuale. In questo esempio, utilizzeremo nuovamente test.mp3 e la cartella Documenti.

Passo 1: navigare nel terminale dove si trova il file / cartella che si desidera caricare.

cd ~/Documents

Passo 2: avviare il processo di caricamento.

transfer test.mp3

oppure, per una cartella, fare:

transfer file_folder

Passaggio 3: Attendere che il terminale carichi il file. Una barra di avanzamento attraverserà lo schermo e al termine emetterà un link per il download.

Download con Curl

Curl è molto più di uno strumento di upload. È anche uno strumento di download. Per scaricare un file caricato da transfer.sh, seguire queste istruzioni.

Innanzitutto, copia il link di download fornito dallo strumento di caricamento e mantienilo negli Appunti. Quindi, fai questo per scaricare:

curl https://transfer.sh/vN79X/test.zip > test.zip

Assicurati di riscrivere il nome del file dopo > a quello nel link per il download. Questo è ciò che l'arriccia chiama il download sul tuo PC. È possibile cambiare il nome, ma non lo consigliamo.

Download con Wget

Nonostante quanto sia popolare Curl, alcune persone rifiutanoper usarlo come risulta complicato, e invece scegli di usare anche il download di Wget. Ha senso, poiché Wget è molto semplice. Come lo strumento Curl, anche Wget può scaricare facilmente i link Transfer SH. Ecco come:

wget https://transfer.sh/vN79X/test.zip

Conclusione

Non succede spesso, ma a voltelavorando su un server potrebbe essere necessario un rapido accesso a un file da un altro computer. Configurare SSH, accedere a FTP ecc. Sono noiosi. Ecco perché TransferSH è uno strumento così utile. Ciò rende più semplice che mai la cattura di file di qualsiasi dimensione direttamente dalla riga di comando.

Commenti