Αυτές τις μέρες, η κοινή χρήση αρχείων είναι πιο εύκολη από ποτέ. Μεταξύ Dropbox, Google Drive, OneDrive κ.λπ., η μεταφορά πραγμάτων από το ένα μέρος στο άλλο λειτουργεί αρκετά γρήγορα — εκτός αν χρησιμοποιείτε το τερματικό. Εάν χρησιμοποιείτε το Terminal, το πιθανότερο είναι ότι εξακολουθείτε να λαμβάνετε αρχεία μέσω SFTP ή κάτι εξίσου αρχαϊκό. Παρουσιάζοντας ΜεταφοράSH: ένα εργαλείο κοινής χρήσης αρχείων ειδικά σχεδιασμένο για να σας επιτρέπει να ανεβάζετε και να μοιράζεστε αρχεία από το τερματικό Linux.
SPOILER ALERT: Κάντε κύλιση προς τα κάτω και παρακολουθήστε το εκπαιδευτικό βίντεο στο τέλος αυτού του άρθρου.
Πίνακας περιεχομένων
Μη αυτόματη χρήση του 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
Μαλακό καπέλλο
sudo dnf install curl
OpenSUSE
sudo zypper install curl
Άλλα Linux
Οι χρήστες μη mainstream διανομών Linux δεν θα πρέπει να δυσκολεύονται πάρα πολύ να βρουν το πρόγραμμα Curl, λόγω του πόσο ευρέως διαθέσιμο είναι. Για να το αποκτήσετε, απλώς ανοίξτε τον διαχειριστή πακέτων σας, αναζητήστε το “curl” και εγκαταστήστε το! Εάν για κάποιο λόγο δεν είναι διαθέσιμο για εσάς, κατεβάστε το εδώ.
Χρήση Curl για μεταφόρτωση
Η αλληλεπίδραση με το transfer.sh χρησιμοποιώντας το curl απαιτεί αρκετά μεγάλη εντολή. Ετσι δουλευει.
Αρχικά, βρείτε ένα αρχείο στο σύστημα αρχείων σας για μεταφόρτωση. Χρησιμοποιήστε “εύρεση” ή “εντοπίστε” στο τερματικό σας (ή μεταβείτε στη διαχείριση αρχείων, βρείτε το αρχείο και σημειώστε πού βρίσκεται). Αφού σημειώσετε πού βρίσκεται το αρχείο που προσπαθείτε να ανεβάσετε, χρησιμοποιήστε την εντολή cd για να μεταβείτε εκεί. Σε αυτό το παράδειγμα, θα ανεβάσουμε το “test.mp3” από το φάκελο Documents.
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 Terminal Alias
Η μη αυτόματη μεταφόρτωση με το Curl μπορεί να σας βγάλει από μια δύσκολη θέση, αλλά δεν είναι τέλεια. Δεν υπάρχει καμία ένδειξη ότι η μεταφόρτωση λειτουργεί, πόσο μεγάλο μέρος ενός αρχείου έχει μεταφορτωθεί και το να θυμάστε μια πρόταση μόνο για να ανεβάσετε κάτι είναι αρκετά κουραστικό. Εξαιτίας αυτού, ο προγραμματιστής δημιούργησε ένα ψευδώνυμο Bash. Αυτό το ψευδώνυμο bash, όταν ρυθμιστεί, θα δώσει στον χρήστη τη δυνατότητα να ανεβάζει εύκολα αρχεία και φακέλους, με μία μόνο λέξη.
Για να το ρυθμίσετε, ανοίξτε το αρχείο BashRC. Κατανοήστε ότι το αρχείο BashRC κάθε μεμονωμένου χρήστη πρέπει να τροποποιηθεί για να χρησιμοποιηθεί αυτό το ψευδώνυμο.
nano ~/.bashrc
Χρησιμοποιώντας το Nano, μεταβείτε στο τέλος του αρχείου. Στη συνέχεια, επικολλήστε τον κωδικό Transfer SH Alias. Φροντίστε να επικολλήσετε κάθε κομμάτι του κώδικα, διαφορετικά το ψευδώνυμο bash δεν θα λειτουργήσει.
Σημείωση: η επικόλληση με χρήση 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, αποθηκεύστε το nano με CTRL + O. Κάντε επανεκκίνηση του υπολογιστή σας ώστε οι αλλαγές να τεθούν σε ισχύ.
Χρήση ψευδωνύμου τερματικού για μεταφόρτωση
Η μεταφόρτωση με το ψευδώνυμο TransferSH είναι πολύ πιο εύκολη από τη μη αυτόματη χρήση του Curl. Σε αυτό το παράδειγμα, θα χρησιμοποιήσουμε ξανά το test.mp3 και το φάκελο Documents.
Βήμα 1: πλοηγηθείτε στο τερματικό όπου βρίσκεται το αρχείο/φάκελος που θέλετε να ανεβάσετε.
cd ~/Documents
Βήμα 2: ξεκινήστε τη διαδικασία μεταφόρτωσης.
transfer test.mp3
ή, για έναν φάκελο, κάντε:
transfer file_folder
Βήμα 3: Περιμένετε μέχρι το τερματικό να ανεβάσει το αρχείο. Μια γραμμή προόδου θα περάσει στην οθόνη και θα φτύσει έναν σύνδεσμο λήψης όταν ολοκληρωθεί.
Λήψη με Curl
Το Curl είναι κάτι περισσότερο από ένα απλό εργαλείο μεταφόρτωσης. Είναι επίσης ένα εργαλείο λήψης. Για να κάνετε λήψη ενός αρχείου που έχει μεταφορτωθεί από το transfer.sh, ακολουθήστε αυτές τις οδηγίες.
Αρχικά, αντιγράψτε τον σύνδεσμο λήψης που σας δίνει το εργαλείο μεταφόρτωσης και διατηρήστε τον στο πρόχειρό σας. Στη συνέχεια, κάντε αυτό για λήψη:
curl https://transfer.sh/vN79X/test.zip > test.zip
Βεβαιωθείτε ότι έχετε ξαναγράψει το όνομα του αρχείου μετά > σε αυτό στον σύνδεσμο λήψης. Αυτό ονομάζει το curl τη λήψη στον υπολογιστή σας. Είναι δυνατό να αλλάξετε το όνομα, αλλά δεν το συνιστούμε.
Λήψη με Wget
Παρά το πόσο δημοφιλές είναι το Curl, μερικοί άνθρωποι αρνούνται να το χρησιμοποιήσουν καθώς φαίνεται περίπλοκο και αντ’ αυτού επιλέγουν να χρησιμοποιήσουν και τη λήψη του Wget. Είναι λογικό, καθώς ο Wget είναι πολύ απλός. Όπως το εργαλείο Curl, το Wget μπορεί επίσης να κατεβάσει εύκολα συνδέσμους Transfer SH. Δείτε πώς:
wget https://transfer.sh/vN79X/test.zip
συμπέρασμα
Δεν συμβαίνει συχνά, αλλά κατά καιρούς ενώ εργάζεστε σε διακομιστή μπορεί να χρειαστείτε γρήγορη πρόσβαση σε ένα αρχείο από άλλον υπολογιστή. Η ρύθμιση του SSH, η σύνδεση στο FTP κ.λπ., είναι κουραστική. Γι’ αυτό το TransferSH είναι ένα τόσο χρήσιμο εργαλείο. Το κάνει έτσι ώστε η αρπαγή αρχείων οποιουδήποτε μεγέθους απευθείας από τη γραμμή εντολών πιο εύκολη από ποτέ.