Ci sono molte utilità di condivisione file sul web. Alcuni di essi sono basati su CLI e altri sono basati su GUI. Quando si tratta di condividere o trasferire file di grandi dimensioni dalla riga di comando su Internet, ce ne sono solo alcuni. Uno di questi è Transfer.sh . No, non è uno script, è un sito web. Il sito Transfer.sh ti consente di condividere file su Internet dalla riga di comando in Linux, in modo semplice e veloce. Non è necessario installare nulla tranne cURL o wget . Queste utilità sono preinstallate sulla maggior parte delle distribuzioni Linux.
Transfer.sh ti consente di caricare file fino a 10 GB in un colpo solo. Tutti i file condivisi scadono automaticamente dopo 14 giorni , quindi non devi preoccuparti di rimuoverli manualmente. Possiamo caricare file singoli o di gruppo in una volta sola. Tutti i file possono essere crittografati prima di essere caricati. Possiamo scansionare i file caricati alla ricerca di malware o virus con ClamAV o VirusTotal. E, naturalmente, è completamente GRATUITO. Per maggiori dettagli guarda il link alla home page del progetto allegato alla fine di questa guida.
Condividi file su Internet dalla riga di comando utilizzando transfer.sh in Linux
La condivisione o il trasferimento di file utilizzando transfer.sh non è un grosso problema. Per prima cosa carichiamo i file.
Carica file utilizzando Transfer.sh
Tutto quello che devi fare è eseguire il seguente comando per condividere i file:
$ curl --upload-file Amazon_s3_tutorial.pdf https://transfer.sh/Amazon_s3_tutorial.pdf
Qui, Amazon_s3_tutorial.pdf è il file nella mia cartella Home.
Risultato di esempio:
https://transfer.sh/S9ewb/Amazon_s3_tutorial.pdf
Al termine del caricamento, il servizio restituisce il link di download univoco del file. Puoi passare questo URL a chiunque desideri scaricare e utilizzare questo file.
È anche possibile caricare file utilizzando 'wget'.
$ wget --method PUT --body-file=/home/sk/file.pdf https://transfer.sh/file.pdf -O - -nv
Transfer.sh ci consente di caricare più file alla volta.
Per caricare più file contemporaneamente, esegui:
$ curl -i -F [email protected]/home/sk/Downloads/bash_tips.pdf -F [email protected]/home/sk/Downloads/Docker.pdf https://transfer.sh/
Risultato di esempio:
HTTP/1.1 100 Continue HTTP/1.1 200 OK Date: Sat, 08 Apr 2017 10:10:01 GMT Content-Type: text/plain Content-Length: 75 Connection: keep-alive Server: Transfer.sh HTTP Server 1.0 X-Made-With: <3 by DutchCoders X-Served-By: Proudly served by DutchCoders https://transfer.sh/E7MLa/bash_tips.pdfhttps://transfer.sh/E7MLa/Docker.pdf
Una volta completato il caricamento, Transfer.sh ti fornirà un link di download univoco per ogni file.
Scarica file
Per scaricare il file, esegui:
$ curl https://transfer.sh/S9ewb/Amazon_s3_tutorial.pdf -o Amazon_s3_tutorial.pdf
Risultato di esempio:
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 693k 100 693k 0 0 171k 0 0:00:04 0:00:04 --:--:-- 171k
In alternativa, puoi visualizzarlo in anteprima e scaricarlo dal tuo browser Web. Basta inserire il link per il download nella barra degli indirizzi del tuo browser web e fare clic su download pulsante per scaricare il file condiviso.
Scarica i file tramite il sito web transfer.sh
Crittografa e carica file
Transfer.sh ti consente di crittografare e caricare i file.
Per crittografare e caricare il file, esegui:
$ cat /home/sk/file.txt|gpg -ac -o-|curl -X PUT --upload-file "-" https://transfer.sh/file.txt
Ti verrà chiesto di inserire una passphrase due volte. Quindi, transfer.sh ti fornirà il link per il download del file crittografato.
https://transfer.sh/140GMQ/file.txt
Decrittografa e scarica i file
Per decrittografare e scaricare il file crittografato sopra, eseguire:
$ curl https://transfer.sh/140GMQ/file.txt|gpg -o- > /home/sk/ostechnix.txt
Risultato di esempio:
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0gpg: WARNING: no command supplied. Trying to guess what you mean ... 100 220 100 220 0 0 113 0 0:00:01 0:00:01 --:--:-- 113 gpg: AES encrypted data gpg: encrypted with 1 passphrase
Aggiungi alias
Se prevedi di utilizzare frequentemente questo servizio, puoi aggiungere alias a .bashrc o .zshrc file per rendere questo comando ancora più semplice.
Se utilizzi la shell BASH, modifica ~/.bashrc file:
$ sudo vi ~/.bashrc
Aggiungi le seguenti righe alla fine.
transfer() { if [ $# -eq 0 ]; then echo -e "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile; }
Salva e chiudi il file. Quindi, esegui il comando seguente per rendere effettive le modifiche salvate.
$ source ~/.bashrc
Ora puoi caricare e scaricare file come mostrato di seguito.
$ transfer file.txt
Risultato di esempio:
################################################################## 100.0% https://transfer.sh/yjRW9/file.txt
Lettura correlata:
- Trasferisci file e cartelle tra computer con Croc
- Condividi file tra desktop Linux con Warpinator
- Come condividere in modo sicuro file su Internet con Firefox Send
- Come condividere in modo sicuro i file dalla riga di comando con ffsend in Linux
- PSiTransfer:una semplice soluzione open source per la condivisione di file self-hosted
- OnionShare:condividi file di qualsiasi dimensione in modo sicuro e anonimo
Conclusione
Ad essere onesti, non ho mai sentito o utilizzato questo tipo di strumento di condivisione di file prima. Per quanto ho testato questo strumento, è davvero facile e molto veloce. E sì, alcuni dei servizi web popolari come Google Drive, One Drive ti consentono anche di condividere e trasferire file su Internet. Ma hanno alcune limitazioni. È necessario disporre di un account registrato per utilizzare tali servizi. Tuttavia, transfer.sh non ha bisogno di alcun account registrato. Ancora più importante, non è necessario lasciare il Terminale e non è necessario installare applicazioni aggiuntive per condividere i file.
Se conosci strumenti simili per la condivisione di file da riga di comando, faccelo sapere nella sezione commenti qui sotto. Sono tutto orecchie!