Πώς να εκτελέσετε δύο ή περισσότερες εντολές τερματικού ταυτόχρονα στο Linux
Εάν χρησιμοποιείτε το Linux, γνωρίζετε πόσο χρήσιμη είναι η γραμμή εντολών για την εργασία με αρχεία, την εγκατάσταση λογισμικού και την εκκίνηση προγραμμάτων. Αλλά μπορεί να είναι ακόμα πιο αποτελεσματική αν τρέχετε πολλαπλές εντολές ταυτόχρονα.
Ο συνδυασμός δύο ή περισσότερων εντολών στη γραμμή εντολών είναι επίσης γνωστή ως "chaining command". Θα σας δείξουμε διαφορετικούς τρόπους με τους οποίους μπορείτε να συνδυάσετε εντολές στη γραμμή εντολών.
Επιλογή 1: Ο χειριστής του τεταρτημορίου (;)
Ο χειριστής ερωτήματος (?) Σας επιτρέπει να εκτελείτε πολλαπλές εντολές διαδοχικά, ανεξάρτητα από το αν επιτυγχάνεται κάθε προηγούμενη εντολή. Για παράδειγμα, ανοίξτε ένα παράθυρο τερματικού (Ctrl + Alt + T στο Ubuntu και στο Linux Mint). Στη συνέχεια, πληκτρολογήστε τις ακόλουθες τρεις εντολές σε μια γραμμή, διαχωρισμένες με ερωτηματικά και πατήστε Enter. Αυτό θα σας δώσει μια λίστα του τρέχοντος καταλόγου ( ls
), ανακαλύψτε τον κατάλογο στον οποίο βρίσκεστε ( pwd
) και εμφανίστε το όνομα σύνδεσης ( ποιός είμαι
) όλα ταυτόχρονα.
ls; pwd; ποιός είμαι
Δεν χρειάζεται να τοποθετήσετε κενά ανάμεσα στα ερωτηματικά και στις εντολές. Μπορείτε να εισαγάγετε τις τρεις εντολές ως ls; pwd; whoami
. Ωστόσο, οι χώροι καθιστούν τη συνδυασμένη εντολή περισσότερο ευανάγνωστη, πράγμα που είναι ιδιαίτερα χρήσιμο αν τοποθετείτε μια συνδυασμένη εντολή σε ένα σενάριο κελύφους.
Επιλογή 2: Ο λογικός AND Operator (&&)
Εάν θέλετε η δεύτερη εντολή να εκτελείται μόνο εάν η πρώτη εντολή είναι επιτυχής, διαχωρίστε τις εντολές με τον λογικό τελεστή AND, που είναι δύο ampersands ( &&
). Για παράδειγμα, θέλουμε να δημιουργήσουμε έναν κατάλογο που ονομάζεται MyFolder και στη συνέχεια να αλλάξουμε σε αυτόν τον κατάλογο-υπό τον όρο ότι δημιουργήθηκε με επιτυχία. Έτσι, πληκτρολογούμε τα ακόλουθα στη γραμμή εντολών και πατήστε Enter.
mkdir MyFolder && cd MyFolder
Ο φάκελος δημιουργήθηκε με επιτυχία, οπότε το CD
εντολή εκτελέστηκε και είμαστε τώρα στο νέο φάκελο.
Συνιστούμε να χρησιμοποιείτε τον λογικό τελεστή AND αντί για τον τελεστή ημικυκλίων τις περισσότερες φορές (.
). Αυτό εξασφαλίζει ότι δεν κάνετε τίποτα καταστροφικό. Για παράδειγμα, εάν εκτελέσετε μια εντολή για να αλλάξετε σε έναν κατάλογο και στη συνέχεια να αναγκάσετε να καταργήσετε όλα αυτά στον κατάλογο αυτό ( cd / some_directory; rm -Rf *
), θα μπορούσατε να καταλήξετε να καταστρέψετε το σύστημά σας, εάν η αλλαγή καταλόγου δεν συνέβη. Όχι ότι σας συνιστούμε να εκτελέσετε μια εντολή για να αφαιρέσετε άνευ όρων όλα τα αρχεία ενός καταλόγου ταυτόχρονα.
Επιλογή Τρίτο: Ο Λογικός OR Operator (||)
Μερικές φορές μπορεί να θέλετε να εκτελέσετε μια δεύτερη εντολή μόνο αν η πρώτη εντολή κάνει δεν πετυχαίνω. Για να γίνει αυτό, χρησιμοποιούμε τον λογικό χειριστή OR ή δύο κάθετες ράβδους ( ||
). Για παράδειγμα, θέλουμε να ελέγξουμε αν υπάρχει ο κατάλογος MyFolder ( [-d ~ / MyFolder]
) και να το δημιουργήσετε εάν δεν το κάνει ( mkdir ~ / MyFolder
). Έτσι, πληκτρολογούμε την ακόλουθη εντολή στο μήνυμα και πατήστε Enter.
[-d ~ / MyFolder] || mkdir ~ / MyFolder
Βεβαιωθείτε ότι υπάρχει ένας χώρος μετά τον πρώτο βραχίονα και πριν από το δεύτερο βραχίονα ή την πρώτη εντολή που ελέγχει αν υπάρχει ο κατάλογος δεν θα λειτουργήσει.
Στο παράδειγμά μας, ο κατάλογος MyFolder δεν υπάρχει, οπότε η δεύτερη εντολή δημιουργεί τον κατάλογο.
Συνδυασμός πολλών χειριστών
Μπορείτε επίσης να συνδυάσετε πολλαπλούς χειριστές στη γραμμή εντολών. Για παράδειγμα, θέλουμε πρώτα να ελέγξουμε αν υπάρχει αρχείο ( [-f ~ / sample.txt]
). Εάν συμβαίνει αυτό, εκτυπώνουμε ένα μήνυμα στην οθόνη λέγοντας έτσι ( echo "Το αρχείο υπάρχει."
). Εάν όχι, δημιουργούμε το αρχείο ( αγγίξτε το ~ / sample.txt
). Έτσι, πληκτρολογούμε τα ακόλουθα στη γραμμή εντολών και πατήστε Enter.
[-f ~ / sample.txt] && echo "Το αρχείο υπάρχει." || αγγίξτε το ~ / sample.txt
Στο παράδειγμά μας, το αρχείο δεν υπήρχε, οπότε δημιουργήθηκε.
Ακολουθεί μια χρήσιμη περίληψη καθενός από τους χειριστές που χρησιμοποιούνται για να συνδυάσουν τις εντολές:
-
ΕΝΑ ; σι
- Εκτελέστε A και στη συνέχεια B, ανεξάρτητα από την επιτυχία ή την αποτυχία του A -
Α && Β
- Εκτελέστε το B μόνο εάν ο A πέτυχε -
A || σι
- Εκτελέστε το B μόνο εάν αποτύχει το A
Όλες αυτές οι μέθοδοι συνδυασμού εντολών μπορούν επίσης να χρησιμοποιηθούν σε δέσμες ενεργειών κελύφους τόσο στο Linux όσο και στα Windows 10.
Μπορείτε επίσης να διορθώσετε αυτόματα την ορθογραφία και τα λάθη όταν χρησιμοποιείτε το "cd" στη γραμμή εντολών στο Linux για να αποφύγετε τις δραστικές συνέπειες όταν συνδυάζετε εντολές.