Manapság a fájlok megosztása egyszerűbb, mint valaha. A Dropbox, a Google Drive, a OneDrive stb. között a dolgok egyik helyről a másikra való eljuttatása meglehetősen gyorsan működik – hacsak nem a terminált használja. Ha a terminált használja, valószínűleg továbbra is SFTP-n keresztül kap fájlokat, vagy valami hasonlóan archaikusat. Bemutatkozik TransferSH: egy fájlmegosztó eszköz, amelyet kifejezetten arra terveztek, hogy lehetővé tegye a fájlok feltöltését és megosztását a Linux terminálról.
SPOILER FIGYELMEZTETÉS: Görgessen le, és tekintse meg a cikk végén található oktatóvideót.
Tartalomjegyzék
A Transfer.sh manuális használata
A Transfer.sh webes felülettel rendelkezik, és fájlokat tölthet fel és oszthat meg a böngészőből. A szolgáltatás a parancssorral is működik, így közvetlenül a terminálon keresztül oszthat meg egy fájlt. A Linux-terminálról a Transfer.sh használatával való fájlok megosztásához Curl szükséges.
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
Más Linuxok
A nem általános Linux-disztribúciók felhasználóinak nem okozhat gondot a Curl program megtalálása, mivel széles körben elérhető. Ahhoz, hogy megszerezze, egyszerűen nyissa meg a csomagkezelőt, keresse meg a „curl” szót, és telepítse! Ha valamilyen okból nem elérhető az Ön számára, töltse le innen.
Curl használata a feltöltéshez
A curl használatával a transfer.sh-val való interakció meglehetősen hosszú parancsot igényel. Íme, hogyan működik.
Először keressen egy fájlt a fájlrendszerében a feltöltéshez. Használja a „find” vagy a „locate” kifejezést a terminálon (vagy lépjen a fájlkezelőbe, keresse meg a fájlt, és jegyezze fel, hol található). Miután tudomásul vette, hol található a feltölteni kívánt fájl, a cd paranccsal lépjen oda. Ebben a példában a „test.mp3” fájlt a Dokumentumok mappából töltjük fel.
cd ~/Documents
A terminál most abban a könyvtárban van, ahol a test.mp3 található. Most használja ezt a „formula” parancsot a fájl feltöltéséhez. Ez a parancs első része:
curl --upload-file ./test.mp3
A következő lépés egy URL létrehozása a transfer.sh számára. Tartsa szem előtt a fájl nevét (valamint a kiterjesztést), és írja be a következőképpen:
https://transfer.sh/test.mp3
A végeredménynek így kell kinéznie;
curl --upload-file ./test.mp3 https://transfer.sh/test.mp3
A Curl elküldi a fájlt a Transfer.sh-nak, és visszaküld egy URL-t. Nyissa meg az URL-t a fájl letöltéséhez, vagy küldje el annak, akivel meg szeretné osztani a fájlt.
Transfer.sh terminál álnév
A Curl-lel való manuális feltöltés kisegítheti a szorult helyzetből, de nem tökéletes. Semmi sem utal arra, hogy a feltöltés működik, mennyi fájl került feltöltésre, és egy mondat megemlékezése csak azért, hogy feltöltsön valamit, elég fárasztó. Emiatt a fejlesztő Bash álnevet készített. Ez a bash alias, amikor beállítja, lehetővé teszi a felhasználó számára, hogy egyetlen szóval egyszerűen feltölthessen fájlokat és mappákat.
A beállításhoz nyissa meg a BashRC fájlt. Értse meg, hogy minden egyes felhasználó BashRC fájlját módosítani kell az álnév használatához.
nano ~/.bashrc
A Nano használatával menjen a fájl legvégére. Ezután illessze be a Transfer SH Alias kódot. Ügyeljen arra, hogy a kód minden bitjét beillessze, különben a bash álnév nem fog működni.
Megjegyzés: A Nano használatával a vágólapon keresztül a CTRL + SHIFT + V billentyűkombinációval lehet beilleszteni.
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 }
Miután beillesztette a nagy mennyiségű kódot a ~/.bashrc fájlba, mentse a nano-t a CTRL + O billentyűkombinációval. Indítsa újra a számítógépet, hogy a módosítások életbe lépjenek.
Terminál alias használata a feltöltéshez
A TransferSH álnévvel való feltöltés sokkal egyszerűbb, mint a Curl manuális használata. Ebben a példában ismét a test.mp3 fájlt és a Dokumentumok mappát fogjuk használni.
1. lépés: navigáljon a terminálon oda, ahol a feltölteni kívánt fájl/mappa található.
cd ~/Documents
2. lépés: indítsa el a feltöltési folyamatot.
transfer test.mp3
vagy mappához tegye a következőket:
transfer file_folder
3. lépés: Várja meg, amíg a terminál feltölti a fájlt. Egy folyamatjelző sáv jelenik meg a képernyőn, és kiköp egy letöltési linket, ha elkészül.
Letöltés a Curl segítségével
A Curl több, mint egy feltöltési eszköz. Ez is egy letöltő eszköz. A transfer.sh által feltöltött fájl letöltéséhez kövesse az alábbi utasításokat.
Először másolja ki a letöltési linket, amelyet a feltöltő eszköz ad, és tartsa a vágólapon. Ezután tegye a következőket a letöltéshez:
curl https://transfer.sh/vN79X/test.zip > test.zip
Ügyeljen arra, hogy a fájl nevét a > után írja át a letöltési linken lévőre. A curl így nevezi el a letöltést a számítógépén. A név megváltoztatása lehetséges, de nem javasoljuk.
Letöltés a Wget segítségével
Annak ellenére, hogy mennyire népszerű a Curl, egyesek nem hajlandók használni, mivel bonyolultnak tűnik, és ehelyett a Wget letöltése mellett döntenek. Ez logikus, mivel a Wget nagyon egyszerű. A Curl eszközhöz hasonlóan a Wget is könnyedén letöltheti a Transfer SH hivatkozásokat. Itt van, hogyan:
wget https://transfer.sh/vN79X/test.zip
Következtetés
Ritkán fordul elő, de időnként a szerveren végzett munka során szükség lehet egy másik számítógépről származó fájl gyors elérésére. Az SSH beállítása, az FTP-re való bejelentkezés stb. fárasztó. Ezért olyan hasznos eszköz a TransferSH. Lehetővé teszi, hogy bármilyen méretű fájl megragadása közvetlenül a parancssorból egyszerűbb, mint valaha.