Днес споделянето на файлове е по-лесно от всякога. Между Dropbox, Google Drive, OneDrive и т.н. получаването на неща от едно място на друго работи доста бързо - освен ако не използвате терминала. Ако използвате терминала, има вероятност пак да получавате файлове през SFTP или нещо също толкова архаично. Представяме TransferSH: инструмент за споделяне на файлове, специално създаден да ви позволява да качвате и споделяте файлове от терминала на Linux.
ВНИМАНИЕ СПОЙЛЕР: Превъртете надолу и гледайте видео урока в края на тази статия.
Използване на Transfer.sh ръчно
Transfer.sh има уеб интерфейс и можете да качвате и споделяте файлове от вашия браузър. Услугата работи и с командния ред, така че можете да споделяте файл директно през терминала. За да споделяте файлове от терминала на Linux с помощта на Transfer.sh, трябва 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
Други Linux
Потребители на не-основни Linux дистрибуциине би трябвало да има прекалено големи проблеми с намирането на програмата Curl, поради това колко широко е на разположение. За да го получите, просто отворете вашия мениджър на пакети, потърсете „curl“ и го инсталирайте! Ако по някаква причина той не е достъпен за вас, изтеглете го тук.
Използване на Curl за качване
Взаимодействието с transfer.sh с помощта на curl изисква доста дълга команда. Ето как работи.

Първо намерете файл във вашата файлова система, който да качите. Използвайте „find“ или „locate“ във вашия терминал (или отидете на файловия мениджър, намерете файла и отбележете къде се намира). След като вземете предвид къде е файлът, който се опитвате да качите, използвайте командата cd, за да отидете там. В този пример ще качваме „test.mp3“ от папката „Документи“.
cd ~/Documents
Терминалът вече е в директорията, където test.mp3 е. Сега използвайте тази команда „формула“, за да качите файла. Това е първата част от командата:
curl --upload-file ./test.mp3
Следващата стъпка е да създадете URL адрес за transfer.sh, който да използвате. Имайте предвид името на файла (както и разширението) и го запишете така:
https://transfer.sh/test.mp3
Крайният резултат трябва да изглежда така;
curl --upload-file ./test.mp3 https://transfer.sh/test.mp3
Curl ще изпрати файла до Transfer.sh и ще върне URL адрес. Отворете URL адреса, за да изтеглите файла, или го изпратете на когото искате да споделите файла.
Transfer.sh Псевдоним на терминала
Ръчно качване с Curl може да ви извади отплътно място, но не е идеално. Няма индикации, че качването работи, колко е качен файл и запомнянето на изречение само за качване на нещо е доста досадно. Именно поради това разработчикът направи псевдоним на Bash. Този баш псевдоним, когато е настроен, ще даде на потребителя възможността лесно да качва файлове и папки с една дума.
За да го настроите, отворете вашия BashRC файл. Разберете, че BashRC файлът на всеки отделен потребител трябва да бъде променен, за да използва този псевдоним.
nano ~/.bashrc
Използвайки Nano, отидете в самия край на файла. След това поставете кода на псевдоним на Transfer SH. Не забравяйте да поставите всеки бит на кода, или баш псевдонима няма да работи.

Забележка: Поставянето с Nano чрез клипборда може да се направи с 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 }
След поставяне на дългото количество код към ~ / .Bashrc файл, запишете нано с CTRL + O, Рестартирайте компютъра си, така че редакциите да влязат в сила.
Използване на псевдоним на терминала за качване
Качването с псевдоним TransferSH е много по-лесно, отколкото използването на Curl ръчно. В този пример отново ще използваме test.mp3 и папката „Документи“.
Етап 1: отидете на терминала до мястото, където е файлът / папката, която искате да качите.
cd ~/Documents
Стъпка 2: стартирайте процеса на качване.

transfer test.mp3
или, за папка направете:
transfer file_folder
Стъпка 3: Изчакайте терминала да качи файла. Лента за напредък ще премине през екрана и ще изплюе връзката за изтегляне, когато приключи.
Изтегляне с Curl
Curl е нещо повече от инструмент за качване. Това е и инструмент за изтегляне. За да изтеглите файл, качен от transfer.sh, следвайте тези инструкции.
Първо копирайте връзката за изтегляне, която ви дава инструмента за качване, и я запазете в клипборда. След това направете това, за да изтеглите:
curl https://transfer.sh/vN79X/test.zip > test.zip
Не забравяйте да напишете името на файла след това > към този във връзката за изтегляне. Това е, което къдрене име на изтегляне на вашия компютър. Възможно е да промените името, но не го препоръчваме.
Изтегляне с Wget
Въпреки колко е популярен Curl, някои хора отказватда го използвате, тъй като се изключва като сложно и вместо това изберете да използвате и изтеглянето на Wget. Има смисъл, тъй като Уджет е много прям. Подобно на инструмента Curl, Wget също така може лесно да изтегли връзките за трансфер на SH. Ето как:
wget https://transfer.sh/vN79X/test.zip
заключение
Това не се случва често, но понякогаРабота на сървър може да ви е необходим бърз достъп до файл от друг компютър. Настройката на SSH, влизането в FTP и т.н., са досадни. Ето защо TransferSH е толкова полезен инструмент. Това прави така, че хващането на файлове от всякакъв размер направо от командния ред е по-лесно от всякога.
Коментари