- - Hoe bestanden te uploaden en delen vanaf de Linux-terminal met Transfer.sh

Bestanden uploaden en delen vanaf de Linux-terminal met Transfer.sh

Tegenwoordig is het delen van bestanden eenvoudiger dan ooit. Tussen Dropbox, Google Drive, OneDrive enz. Werkt het heel snel om dingen van de ene plaats naar de andere te brengen, tenzij je de terminal gebruikt. Als u de Terminal gebruikt, is de kans groot dat u nog steeds bestanden over SFTP ontvangt, of iets dat even archaïsch is. Introductie van TransferSH: een tool voor het delen van bestanden die speciaal is ontworpen om u bestanden te laten uploaden en delen vanaf de Linux Terminal.

SPOILER ALERT: Scrol omlaag en bekijk de videozelfstudie aan het einde van dit artikel.

Transfer.sh handmatig gebruiken

Overdracht.sh heeft een webinterface en u kunt bestanden uploaden en delen vanuit uw browser. De service werkt ook met de opdrachtregel, zodat u een bestand rechtstreeks via de terminal kunt delen. Om bestanden te delen vanaf de Linux-terminal met behulp van Transfer.sh, hebt u Curl nodig.

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

Andere Linuxes

Gebruikers van niet-mainstream Linux-distributieszou niet te veel moeite moeten hebben om het Curl-programma te vinden, vanwege de brede beschikbaarheid ervan. Om het te krijgen, opent u eenvoudig uw pakketbeheerder, zoekt u op "krul" en installeert u het! Als het om welke reden dan ook niet beschikbaar is, download het dan hier.

Curl gebruiken om te uploaden

Interactie met transfer.sh met behulp van curl vereist een vrij lange opdracht. Dit is hoe het werkt.

Zoek eerst een bestand op uw bestandssysteem om te uploaden. Gebruik "zoeken" of "lokaliseren" in uw terminal (of ga naar Bestandsbeheer, zoek het bestand en noteer waar het zich bevindt). Nadat je hebt vastgesteld waar het bestand is dat je probeert te uploaden, gebruik je de cd-opdracht om daar naartoe te gaan. In dit voorbeeld uploaden we "test.mp3" vanuit de map Documenten.

cd ~/Documents

De terminal staat nu in de directory waar test.mp3 is. Gebruik nu deze opdracht "formule" om het bestand te uploaden. Dit is het eerste deel van het commando:

 curl --upload-file ./test.mp3

De volgende stap is het maken van een URL voor transfer.sh om te gebruiken. Houd rekening met de bestandsnaam (evenals de extensie) en schrijf deze als volgt:

https://transfer.sh/test.mp3

Het eindresultaat zou er zo uit moeten zien;

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

Curl verzendt het bestand naar Transfer.sh en retourneert een URL. Open de URL om het bestand te downloaden of stuur het naar wie u het bestand wilt delen.

Transfer.sh Terminal Alias

Handmatig uploaden met Curl kan je uit een halenkrappe plek, maar het is niet perfect. Er zijn geen aanwijzingen dat de upload werkt, hoeveel van een bestand is geüpload en het onthouden van een zin om iets te uploaden is vrij vervelend. Daarom heeft de ontwikkelaar een Bash-alias gemaakt. Deze bash-alias geeft de gebruiker, wanneer ingesteld, de mogelijkheid om eenvoudig bestanden en mappen te uploaden, met een enkel woord.

Open het BashRC-bestand om het in te stellen. Begrijp dat het BashRC-bestand van elke individuele gebruiker moet worden aangepast om deze alias te gebruiken.

nano ~/.bashrc

Ga met Nano helemaal naar het einde van het bestand. Plak vervolgens de Transfer SH Alias-code. Zorg ervoor dat u elk stukje van de code plakt, anders werkt de bash-alias niet.

Opmerking: plakken met behulp van Nano via het klembord kan worden gedaan met 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
}

Na het plakken van de lange hoeveelheid code aan de ~ / .Bashrc bestand, sla nano op met CTRL + O. Start uw pc opnieuw op zodat de bewerkingen van kracht worden.

Terminal-alias gebruiken om te uploaden

Uploaden met de TransferSH-alias is veel eenvoudiger dan handmatig Curl gebruiken. In dit voorbeeld gebruiken we opnieuw test.mp3 en de map Documenten.

Stap 1: navigeer naar de terminal waar het bestand / de map staat die u wilt uploaden.

cd ~/Documents

Stap 2: start het uploadproces.

transfer test.mp3

of, voor een map:

transfer file_folder

Stap 3: Wacht tot de terminal het bestand heeft geüpload. Er verschijnt een voortgangsbalk over het scherm en deze zal een downloadkoppeling uitspuwen wanneer deze is voltooid.

Downloaden met Curl

Curl is meer dan alleen een uploadtool. Het is ook een downloadtool. Volg deze instructies om een ​​bestand te downloaden dat is geüpload door transfer.sh.

Kopieer eerst de downloadkoppeling die de uploadtool u geeft en bewaar deze op uw klembord. Doe dit vervolgens om te downloaden:

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

Vergeet niet de naam van het bestand opnieuw te schrijven > naar degene in de downloadlink. Dit is wat curl de download op uw pc noemt. Het is mogelijk om de naam te wijzigen, maar we raden het niet aan.

Downloaden met Wget

Ondanks hoe populair Curl is, weigeren sommige mensenom het te gebruiken omdat het er zo ingewikkeld uitziet, en in plaats daarvan ervoor kiezen om ook de Wget-download te gebruiken. Het is logisch, want Wget is heel eenvoudig. Net als de Curl-tool kan Wget ook eenvoudig Transfer SH-koppelingen downloaden. Hier is hoe:

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

Gevolgtrekking

Het gebeurt niet vaak, maar somswerkend op een server heeft u mogelijk snelle toegang nodig tot een bestand vanaf een andere computer. Het instellen van SSH, inloggen op FTP etc. is vervelend. Daarom is TransferSH zo'n handig hulpmiddel. Het maakt het zo dat bestanden van elke grootte vanaf de opdrachtregel gemakkelijker dan ooit te pakken zijn.

Comments