Πώς να μετονομάσετε έναν κατάλογο στο Linux
Γρήγοροι Σύνδεσμοι
Βασικά Takeaways
-
Η μετονομασία ενός καταλόγου στο
Linux
δεν βλάπτει τα δεδομένα μέσα σε αυτόν. Αλλάζει μόνο τη διαδρομή προς τα δεδομένα, αφήνοντας ανέπαφα τα αρχεία και τους καταλόγους. - Η εντολή “mv” είναι η απλούστερη και πιο συχνά χρησιμοποιούμενη μέθοδος μετονομασίας καταλόγων στο Linux.
- Εάν χρειάζεται να εκτελέσετε πιο σύνθετες εργασίες μετονομασίας, η εντολή “μετονομασία” με εκφράσεις Perl παρέχει μια ισχυρή και ευέλικτη επιλογή. Βεβαιωθείτε ότι έχετε εγκαταστήσει την κατάλληλη έκδοση για τη διανομή Linux σας.
Η μετονομασία ενός καταλόγου στο Linux είναι εύκολη και υπάρχουν πολλοί τρόποι για να το κάνετε. Από τη μετονομασία ενός καταλόγου έως την εύρεση και τη μετονομασία πολλών, δείτε πώς να το κάνετε.
Η μετονομασία ενός φακέλου δεν θα βλάψει τα δεδομένα σας
Η μετονομασία καταλόγων είναι κάτι που όλοι πρέπει να κάνουμε από καιρό σε καιρό.
Μπορεί να δημιουργήσουμε έναν κατάλογο και να γράψουμε λάθος το όνομά του και θέλουμε να τον διορθώσουμε. Συχνά, ο σκοπός ενός καταλόγου αλλάζει με την πάροδο του χρόνου ή στη διάρκεια ζωής ενός έργου και θέλετε να προσαρμόσετε το όνομα ώστε να αντικατοπτρίζει τη νέα του χρήση. Ίσως έχετε αποσυμπιέσει ένα αρχείο αρχειοθέτησης και έχει δημιουργήσει ένα δέντρο καταλόγου με τα ονόματα των καταλόγων με κεφαλαία και θα θέλατε με πεζά.
Όποιος κι αν είναι ο λόγος, η μετονομασία ενός καταλόγου δεν επηρεάζει τίποτα τα δεδομένα που βρίσκονται μέσα σε αυτόν. Αλλάζει τη διαδρομή προς αυτά τα δεδομένα, αλλά τα αρχεία και οι κατάλογοι μέσα στον μετονομασμένο κατάλογό σας δεν αγγίζονται.
Μην
μετονομάστε καταλόγους συστήματος. Η αλλαγή της διαδρομής προς τα αρχεία συστήματος και τις εντολές θα έχει αρνητικές επιπτώσεις στη λειτουργία του υπολογιστή σας, τουλάχιστον. Εάν χρειάζεται να χρησιμοποιήσετε
sudo
για να μετονομάσετε έναν κατάλογο — εκτός αν ξέρετε πραγματικά τι κάνετε — το πιθανότερο είναι ότι δεν πρέπει να τον μετονομάσετε.
Χρησιμοποιώντας την εντολή mv
Στις πιο απλές περιπτώσεις, το μόνο που χρειαζόμαστε πραγματικά είναι το
mv
εντολή. Αυτό είναι αναπόσπαστο μέρος κάθε διανομής Linux, επομένως δεν υπάρχει τίποτα για εγκατάσταση.
ο
mv
η εντολή είναι άνω των 50 ετών τη στιγμή της σύνταξης. Προέρχεται από την αυγή του Unix, όταν οι σύντομες και κρυπτικές εντολές ήταν στη μόδα, πιθανώς για να μειωθεί ο αριθμός των χαρακτήρων που έπρεπε να περάσουν κατά μήκος αργών σειριακών γραμμών από τηλετύπους και ανόητα τερματικά στον πραγματικό υπολογιστή.
Στην πραγματικότητα σημαίνει “μετακίνηση” και μπορεί να χρησιμοποιηθεί για τη μετακίνηση αρχείων από κατάλογο σε κατάλογο. Εάν μετακινήσετε ένα αρχείο στην ίδια θέση που βρίσκεται ήδη και του δώσετε νέο όνομα, έχετε μετονομάσει το αρχείο.
Και
μπορούμε να κάνουμε το ίδιο με τους καταλόγους.
Υπάρχουν δύο υποκατάλογοι σε αυτόν τον κατάλογο.
ls
Για να μετονομάσουμε έναν κατάλογο χρησιμοποιούμε την εντολή mv. Πρέπει να δώσουμε το τρέχον όνομα του καταλόγου και το νέο όνομα.
mv old-work archive-2
Εάν ο κατάλογος που θέλετε να μετονομάσετε δεν βρίσκεται στον τρέχοντα κατάλογο, δώστε τη διαδρομή καθώς και το όνομα του καταλόγου.
mv ~/htg/old-work ~/htg/archive-2
ls
Χρήση του προγράμματος περιήγησης αρχείων
Τα προγράμματα περιήγησης αρχείων μπορούν να μετονομάσουν καταλόγους. Το πάτημα πλήκτρων στην
εφαρμογή
Αρχεία GNOME είναι F2. Η επισήμανση ενός καταλόγου και το πάτημα του πλήκτρου F2 ανοίγει το παράθυρο διαλόγου “Μετονομασία φακέλου”.
Πληκτρολογήστε το νέο όνομα και κάντε κλικ στο πράσινο κουμπί “Μετονομασία”.
Ο κατάλογος μετονομάστηκε για εσάς.
Είναι τόσο απλό.
Η μετονομασία Command
Εάν οι ανάγκες σας είναι πιο περίπλοκες από την απλή μετονομασία ενός καταλόγου, ίσως χρειαστεί να χρησιμοποιήσετε το
rename
εντολή. Αυτό σας επιτρέπει να χρησιμοποιείτε εκφράσεις Perl για να μετονομάσετε αρχεία και καταλόγους. Παρέχει έναν εντελώς πιο ισχυρό και ευέλικτο τρόπο μετονομασίας καταλόγων.
Θα μιλήσουμε για το Perl που βασίζεται
rename
εντολή. Υπάρχει μια άλλη, παλαιότερη εντολή που ονομάζεται
rename
που αποτελεί μέρος των βασικών βοηθητικών προγραμμάτων του Linux. Μάλλον θα χρειαστεί να εγκαταστήσετε το Perl
rename
εντολή που θέλουμε να χρησιμοποιήσουμε.
Για να αποφευχθεί η σύγκρουση ονόματος με το υπάρχον
rename
εντολή, η Perl
rename
καλείται η εντολή
prename
στο Fedora και
perl-rename
στο Manjaro. Στο Ubuntu, το
rename
και
prename
Οι εντολές είναι και οι δύο συμβολικοί σύνδεσμοι που επιλύονται σε ένα δυαδικό που ονομάζεται
file-rename
.
Έτσι, στο Manjaro η εντολή που θα χρειαστεί να χρησιμοποιήσετε
perl-rename
και στο Fedora είναι
prename
. Στο Ubuntu, μπορείτε να χρησιμοποιήσετε
rename
ή
prename
.
Για να εγκαταστήσετε την μετονομασία Perl, στο Ubuntu πρέπει να πληκτρολογήσετε:
sudo apt install rename
Στο Fedora, η εντολή είναι:
sudo dnf install prename
Στο Manjaro το πακέτο ονομάζεται
perl-rename
.
sudo pacman -Sy perl-rename
Βεβαιωθείτε ότι χρησιμοποιείτε την κατάλληλη εντολή για τη διανομή σας, εάν θέλετε να επεξεργαστείτε τα παραδείγματα.
Πρώτα βήματα με μετονομασία
ο
rename
Η εντολή παίρνει κανονικές εκφράσεις Perl και τις εφαρμόζει σε ένα αρχείο ή κατάλογο, ή ομάδα αρχείων ή καταλόγων.
Στον κατάλογό μας, έχουμε μια συλλογή από άλλους καταλόγους.
ls
Τα ονόματά τους είναι ένα μείγμα από πεζά, κεφαλαία και μικτά γράμματα. Μπορούμε να τα μετατρέψουμε όλα σε πεζά με μια κατάλληλη έκφραση.
rename 'y/A-Z/a-z/' *
ls
Όλοι οι κατάλογοι είναι τώρα με πεζά, είτε ήταν εξ ολοκλήρου κεφαλαίοι στο παρελθόν είτε περιείχαν το περίεργο κεφαλαίο γράμμα.
Όλη η μαγεία εμπεριέχεται στην έκφραση. Η έκφραση είναι τυλιγμένη σε μονά εισαγωγικά “
'
Αυτό σημαίνει ολόκληρη η εντολή.
-
y
: Αυτό σημαίνει αναζήτηση οποιουδήποτε χαρακτήρα στο πρώτο εύρος χαρακτήρων και αντικατάσταση του με τον αντίστοιχο χαρακτήρα από το δεύτερο εύρος χαρακτήρων. -
/AZ/AZ/
: Το πρώτο εύρος είναι όλα τα γράμματα από το “A” έως το “Z” και το δεύτερο εύρος είναι όλοι οι χαρακτήρες από “a” έως “z”. -
*
: Ο χαρακτήρας μπαλαντέρ αστερίσκου σημαίνει ότι εφαρμόζεται σε όλους τους καταλόγους.
Με άλλα λόγια, η εντολή διαβάζεται ως “για όλους τους καταλόγους, αλλάξτε τυχόν κεφαλαία γράμματα με το ισοδύναμο πεζό γράμμα.”
Προφανώς, μπορείτε να μετονομάσετε έναν μεμονωμένο κατάλογο με
rename
, αν και μυρίζει υπερβολικό. Θα χρησιμοποιήσετε πιο γρήγορα
mv
.
rename 's/gamma/epsilon-2/' *
ls
Το “s” σε αυτή την έκφραση σημαίνει υποκατάστατο. Ελέγχει κάθε κατάλογο για να δει αν το όνομά του είναι “γάμα”. Εάν είναι, το αντικαθιστά με το “epsilon-2”. Λάβετε υπόψη, ωστόσο, ότι αυτό θα ταίριαζε επίσης με έναν κατάλογο που ονομάζεται “gamma-zeta”, για παράδειγμα, μετονομάζοντάς τον σε “epsilon-2-zeta”.
Μπορούμε να το αποφύγουμε προσθέτοντας την αρχή της συμβολοσειράς “
^
“και το τέλος της χορδής”
$
” μεταχαρακτήρες της πρώτης ρήτρας της έκφρασης.
ls
rename 's/^gamma$/epsilon-2/' *
ls
Αυτό αφήνει ανέγγιχτο τον κατάλογο “epsilon-2”.
Χρήση μετονομασίας με άλλες εντολές
Μπορούμε να χρησιμοποιήσουμε άλλες εντολές για να εντοπίσουμε τους καταλόγους που θέλουμε
rename
να εργαστούν για. Εάν έχουμε ένα σύνολο ένθετων καταλόγων και θέλουμε να μετονομάσουμε οποιονδήποτε τελειώνει σε “-old”, ώστε να τελειώνει σε “-archive”, μπορούμε να το επιτύχουμε χρησιμοποιώντας
find
και
xargs
.
Πρέπει να χρησιμοποιήσουμε
xargs
επειδή
rename
δεν δέχεται είσοδο με σωλήνωση. ο
xargs
Η εντολή ξεπερνά αυτό το πρόβλημα αποδεχόμενος τη διοχετευόμενη είσοδο και προσθέτοντας στη γραμμή εντολών μιας άλλης εντολής ως παράμετρο γραμμής εντολών.
Η εντολή μας μοιάζει με αυτό:
find . -depth -type d -name "*-old" | xargs -r rename "s/old$/archive/"
-
.
: Λέμε find να ξεκινήσει η αναζήτηση στον τρέχοντα κατάλογο. Αυτό μπορεί να είναι οποιοδήποτε μονοπάτι, φυσικά. -
-βάθος
: Χρησιμοποιήστε μια αναζήτηση σε βάθος. Αυτό σημαίνει ότι τα περιεχόμενα των βαθύτερων ένθετων υποκαταλόγων υποβάλλονται σε επεξεργασία πριν από τους υψηλότερους. -
-τύπος d
:
Αναζήτηση
καταλόγων, όχι αρχείων. -
-όνομα “*-παλιό”
: Η ένδειξη αναζήτησης. Αναζητούμε καταλόγους με ονόματα που τελειώνουν σε “-παλιό”. -
|
: Σωληνώνουμε την έξοδο από το find στο
xargs
εντολή. -
xargs -r
: Ο
-r
(χωρίς εκτέλεση εάν είναι κενό) σημαίνει ότι δεν εκτελείται η εντολή εάν δεν υπάρχουν αντίστοιχοι κατάλογοι. -
μετονομάστε “s/old$/archive/”
: Ο
rename
εντολή να εκτελεστεί.
Το δέντρο του καταλόγου μας μοιάζει με αυτό πριν από την εντολή.
Εκτελούμε την εντολή μας:
Και μπορούμε να δούμε ότι όλοι οι κατάλογοι που ταιριάζουν, συμπεριλαμβανομένων των ένθετων, έχουν μετονομαστεί.
Άλογα για μαθήματα
Η μετονομασία ενός καταλόγου δεν χρειάζεται τίποτα περισσότερο από αυτό
mv
. Εάν προτιμάτε εφαρμογές GUI, μπορείτε να χρησιμοποιήσετε το πρόγραμμα περιήγησης αρχείων σας. Εάν έχετε πολλούς καταλόγους για μετονομασία, και ειδικά εάν είναι διάσπαρτοι σε ένα δέντρο καταλόγου, θα χρειαστείτε την ευελιξία του
rename
.
VIA:
HowToGeek.com
