Android

Οι εντολές Pushd και popd στο linux

Linux For Beginners 3: Terminal Basics

Linux For Beginners 3: Terminal Basics

Πίνακας περιεχομένων:

Anonim

pushd και popd είναι εντολές που σας επιτρέπουν να εργάζεστε με τη στοίβα καταλόγων και να αλλάζετε τον τρέχοντα κατάλογο εργασίας στο Linux και σε άλλα λειτουργικά συστήματα που μοιάζουν με Unix. Αν και pushd και popd είναι πολύ ισχυρές και χρήσιμες εντολές, είναι υποτιμημένες και σπάνια χρησιμοποιούνται.

Σε αυτό το σεμινάριο, θα σας δείξουμε πώς να χρησιμοποιήσετε τις εντολές pushd και popd για να πλοηγηθείτε στο δέντρο καταλόγου του συστήματός σας.

Κατάλογος στοίβα

Η στοίβα καταλόγων είναι μια λίστα με καταλόγους στους οποίους έχετε πλοηγηθεί προηγουμένως. Τα περιεχόμενα της στοίβας καταλόγων μπορούν να προβληθούν χρησιμοποιώντας την εντολή dirs . Οι κατάλογοι προστίθενται στη στοίβα κατά την αλλαγή σε έναν κατάλογο χρησιμοποιώντας την εντολή pushd και αφαιρούνται με την εντολή popd .

Ο τρέχων κατάλογος εργασίας βρίσκεται πάντα στην κορυφή της στοίβας καταλόγων. Ο τρέχων κατάλογος εργασίας είναι ο κατάλογος (φάκελος) στον οποίο ο χρήστης εργάζεται επί του παρόντος. Κάθε φορά που αλληλεπιδράτε με τη γραμμή εντολών, εργάζεστε σε έναν κατάλογο.

Η εντολή pwd σάς επιτρέπει να μάθετε τον κατάλογο στον οποίο βρίσκεστε.

Κατά την πλοήγηση στο σύστημα αρχείων, χρησιμοποιήστε το πλήκτρο Tab για αυτόματη ολοκλήρωση των ονομάτων των καταλόγων. Η προσθήκη μιας κάθετης στο τέλος του ονόματος καταλόγου είναι προαιρετική.

pushd , popd και dirs είναι ενσωματωμένα στο κέλυφος και η συμπεριφορά του μπορεί να διαφέρει ελαφρώς από το κέλυφος στο κέλυφος. Θα καλύψουμε την έκδοση Bash των εντολών.

pushd Command

Η σύνταξη για την εντολή pushd έχει ως εξής:

pushd

Για παράδειγμα, για να αποθηκεύσετε τον τρέχοντα κατάλογο στο πάνω μέρος της στοίβας καταλόγων και να αλλάξετε σε /var/www θα πληκτρολογήσετε:

~$ pushd /var/www

Με την επιτυχία, η παραπάνω εντολή θα εκτυπώσει τη στοίβα καταλόγων. ~ είναι ο κατάλογος στον οποίο εκτελέσαμε την εντολή pushd . Το σύμβολο tilde ~ σημαίνει τον οικείο κατάλογο.

/var/www ~

pushd αποθηκεύει πρώτα τον τρέχοντα κατάλογο εργασίας στην κορυφή της στοίβας και στη συνέχεια περιηγείται στον συγκεκριμένο κατάλογο. Καθώς ο τρέχων κατάλογος πρέπει πάντα να βρίσκεται στην κορυφή της στοίβας, μόλις αλλάξει ο νέος τρέχων κατάλογος πηγαίνει στην κορυφή της στοίβας αλλά δεν αποθηκεύεται στη στοίβα. Για να το αποθηκεύσετε πρέπει να καλέσετε pushd από αυτό. Εάν χρησιμοποιείτε το cd για να αλλάξετε σε άλλο κατάλογο, το στοιχείο κορυφής της στοίβας θα χαθεί,

Ας προσθέσουμε έναν άλλο κατάλογο στη στοίβα:

/var/www$ pushd /opt

/opt /var/www ~

Για να καταργήσετε την προεπιλεγμένη αλλαγή στον κατάλογο, χρησιμοποιήστε την επιλογή -n . Για παράδειγμα, για να προσθέσετε τον /usr/local κατάλογο στη στοίβα αλλά να μην αλλάξετε σε αυτό θα πληκτρολογήσετε:

/opt$ pushd -n /usr/local

Καθώς ο τρέχων κατάλογος (ο οποίος είναι πάντα στην κορυφή) δεν αλλάζει, ο /usr/local κατάλογος προστίθεται δεύτερο από το επάνω μέρος της στοίβας:

/opt /usr/local /var/www ~

Το pushd δέχεται δύο επιλογές, +N και -N που σας επιτρέπουν να πλοηγηθείτε στον Nth κατάλογο της στοίβας. Η επιλογή +N αλλάζει στο στοιχείο Nth της λίστας στοίβων που μετράει από αριστερά προς τα δεξιά ξεκινώντας από το μηδέν. Όταν χρησιμοποιείται το -N , η κατεύθυνση της καταμέτρησης είναι από τα δεξιά προς τα αριστερά.

Για να απεικονίσουμε καλύτερα τις επιλογές, ας εκτυπώσουμε την τρέχουσα στοίβα καταλόγων:

/opt$ dirs -l -v

Η έξοδος θα εμφανίσει μια ευρετηριακή λίστα της στοίβας καταλόγων:

0 /opt 1 /usr/local 2 /var/www 3 /home/linuxize

Κατά την καταμέτρηση από πάνω προς τα κάτω (ή από αριστερά προς τα δεξιά), ο ευρετήριο του καταλόγου είναι 2 .

pushd +2

Κατά την καταμέτρηση από κάτω προς τα πάνω, ο ευρετήριο του /var/www είναι 1 .

pushd -1.

Όταν χρησιμοποιείται χωρίς κανένα όρισμα, pushd θα εναλλάξει τους δύο πρώτους καταλόγους και θα κάνει τη νέα κορυφή τον τρέχοντα κατάλογο. Αυτό είναι το ίδιο όπως και όταν χρησιμοποιείτε την εντολή cd - .

popd Command

Η εντολή popd παίρνει τη μορφή:

popd

Όταν χρησιμοποιείται χωρίς κανένα όρισμα, το popd καταργεί τον κορυφαίο κατάλογο από τη στοίβα και μεταβαίνει στον νέο κατάλογο κορυφής.

Ας υποθέσουμε ότι έχουμε την ακόλουθη στοίβα καταλόγων:

/opt /usr/local /var/www /etc/nginx ~

/opt$ popd

Η έξοδος θα εμφανίσει τη νέα στοίβα καταλόγων:

/usr/local /var/www /etc/nginx ~

Η επιλογή -n καταστέλλει την προεπιλεγμένη αλλαγή καταλόγου και αφαιρεί το δεύτερο στοιχείο από τη στοίβα:

/opt$ popd -n

/usr/local /etc/nginx ~

Όπως και το pushd , το popd δέχεται επίσης τις επιλογές +N και -N που μπορούν να χρησιμοποιηθούν για την αφαίρεση του Nth καταλόγου της στοίβας.

/opt$ popd +1

/usr/local ~

συμπέρασμα

Κανονικά, θα χρησιμοποιήσατε την εντολή cd για να μετακινηθείτε από έναν κατάλογο στον άλλο. Ωστόσο, εάν ξοδεύετε πολύ χρόνο στη γραμμή εντολών, οι εντολές pushd και popd θα αυξήσουν την παραγωγικότητα και την αποδοτικότητά σας.

bash terminal