Heutzutage ist das Teilen von Dateien einfacher als je zuvor. Zwischen Dropbox, Google Drive, OneDrive usw. funktioniert es ziemlich schnell, Dinge von einem Ort zum anderen zu bringen – es sei denn, Sie verwenden das Terminal. Wenn Sie das Terminal verwenden, erhalten Sie wahrscheinlich immer noch Dateien über SFTP oder etwas ähnlich Archaisches. Einführung TransferSH: ein File-Sharing-Tool, das speziell entwickelt wurde, damit Sie Dateien vom Linux-Terminal hochladen und teilen können.
SPOILER-WARNUNG: Scrollen Sie nach unten und sehen Sie sich das Video-Tutorial am Ende dieses Artikels an.
Inhaltsverzeichnis
Transfer.sh manuell verwenden
Transfer.sh hat eine Webschnittstelle und Sie können Dateien von Ihrem Browser aus hochladen und teilen. Der Dienst funktioniert auch mit der Befehlszeile, sodass Sie eine Datei direkt über das Terminal freigeben können. Um Dateien vom Linux-Terminal mit Transfer.sh freizugeben, benötigen Sie 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
Andere Linuxe
Benutzer von Nicht-Mainstream-Linux-Distributionen sollten keine allzu großen Probleme haben, das Curl-Programm zu finden, da es so weit verbreitet ist. Um es zu bekommen, öffnen Sie einfach Ihren Paketmanager, suchen Sie nach „curl“ und installieren Sie es! Wenn es aus irgendeinem Grund für Sie nicht verfügbar ist, hier herunterladen.
Verwenden von Curl zum Hochladen
Die Interaktion mit transfer.sh mit curl erfordert einen ziemlich langen Befehl. So funktioniert das.
Suchen Sie zunächst eine Datei in Ihrem Dateisystem zum Hochladen. Verwenden Sie „finden“ oder „lokalisieren“ in Ihrem Terminal (oder gehen Sie zum Dateimanager, suchen Sie die Datei und notieren Sie sich, wo sie sich befindet). Nachdem Sie sich notiert haben, wo sich die Datei befindet, die Sie hochladen möchten, verwenden Sie den cd-Befehl, um dorthin zu gelangen. In diesem Beispiel laden wir „test.mp3“ aus dem Ordner „Dokumente“ hoch.
cd ~/Documents
Das Terminal befindet sich jetzt in dem Verzeichnis, in dem sich test.mp3 befindet. Verwenden Sie nun diesen Befehl „Formel“, um die Datei hochzuladen. Dies ist der erste Teil des Befehls:
curl --upload-file ./test.mp3
Der nächste Schritt besteht darin, eine URL für die Verwendung von transfer.sh zu erstellen. Merken Sie sich den Dateinamen (sowie die Erweiterung) und schreiben Sie ihn so:
https://transfer.sh/test.mp3
Das Endergebnis sollte so aussehen;
curl --upload-file ./test.mp3 https://transfer.sh/test.mp3
Curl sendet die Datei an Transfer.sh und gibt eine URL zurück. Öffnen Sie die URL, um die Datei herunterzuladen, oder senden Sie sie an die Person, mit der Sie die Datei teilen möchten.
Transfer.sh Terminal-Alias
Das manuelle Hochladen mit Curl kann Sie aus der Klemme bringen, aber es ist nicht perfekt. Es gibt keinen Hinweis darauf, dass der Upload funktioniert, wie viel von einer Datei hochgeladen wurde, und es ist ziemlich mühsam, sich einen Satz zu merken, nur um etwas hochzuladen. Aus diesem Grund hat der Entwickler einen Bash-Alias erstellt. Dieser Bash-Alias gibt dem Benutzer, wenn er eingerichtet ist, die Möglichkeit, Dateien und Ordner einfach mit einem einzigen Wort hochzuladen.
Um es einzurichten, öffnen Sie Ihre BashRC-Datei. Beachten Sie, dass die BashRC-Datei jedes einzelnen Benutzers geändert werden muss, um diesen Alias zu verwenden.
nano ~/.bashrc
Gehen Sie mit Nano zum Ende der Datei. Fügen Sie dann den Transfer SH-Aliascode ein. Stellen Sie sicher, dass Sie jedes Bit des Codes einfügen, sonst funktioniert der Bash-Alias nicht.
Hinweis: Das Einfügen mit Nano über die Zwischenablage kann mit STRG + UMSCHALT + V erfolgen.
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 }
Nachdem Sie den langen Code in die Datei ~/.bashrc eingefügt haben, speichern Sie nano mit STRG + O. Starten Sie Ihren PC neu, damit die Änderungen wirksam werden.
Terminal-Alias zum Hochladen verwenden
Das Hochladen mit dem TransferSH-Alias ist viel einfacher als die manuelle Verwendung von Curl. In diesem Beispiel verwenden wir wieder test.mp3 und den Ordner Documents.
Schritt 1: Navigieren Sie im Terminal zu der Datei/dem Ordner, die/den Sie hochladen möchten.
cd ~/Documents
Schritt 2: Starten Sie den Upload-Vorgang.
transfer test.mp3
oder für einen Ordner:
transfer file_folder
Schritt 3: Warten Sie, bis das Terminal die Datei hochgeladen hat. Ein Fortschrittsbalken wird über den Bildschirm gehen und einen Download-Link ausspucken, wenn er fertig ist.
Herunterladen mit Curl
Curl ist mehr als nur ein Upload-Tool. Es ist auch ein Download-Tool. Befolgen Sie diese Anweisungen, um eine von transfer.sh hochgeladene Datei herunterzuladen.
Kopieren Sie zunächst den Download-Link, den Ihnen das Upload-Tool gibt, und bewahren Sie ihn in Ihrer Zwischenablage auf. Gehen Sie dann zum Herunterladen wie folgt vor:
curl https://transfer.sh/vN79X/test.zip > test.zip
Achten Sie darauf, den Namen der Datei nach > in den Namen im Download-Link umzuwandeln. So benennt curl den Download auf Ihrem PC. Es ist möglich, den Namen zu ändern, aber wir empfehlen es nicht.
Herunterladen mit Wget
Trotz der Beliebtheit von Curl weigern sich einige Leute, es zu verwenden, da es kompliziert erscheint, und entscheiden sich stattdessen dafür, auch den Wget-Download zu verwenden. Es macht Sinn, da Wget sehr einfach ist. Wie das Curl-Tool kann auch Wget einfach Transfer SH-Links herunterladen. Hier ist wie:
wget https://transfer.sh/vN79X/test.zip
Fazit
Es kommt nicht oft vor, aber manchmal, während Sie auf einem Server arbeiten, benötigen Sie möglicherweise schnellen Zugriff auf eine Datei von einem anderen Computer. Das Einrichten von SSH, das Einloggen in FTP usw. sind mühsam. Deshalb ist TransferSH ein so nützliches Tool. Es macht es so, dass das Abrufen von Dateien jeder Größe direkt von der Befehlszeile aus einfacher denn je ist.