Kill All Stopped Jobs Linux

Kill All Stopped Jobs Linux



Στο Linux, μια εργασία αναφέρεται σε μια διαδικασία που ξεκινά και διαχειρίζεται το κέλυφος. Αυτό μπορεί να είναι μια μόνο εντολή, μια μακρά και σύνθετη εντολή κελύφους που περιλαμβάνει σωλήνες και ανακατευθύνσεις, ένα εκτελέσιμο ή ένα σενάριο. Κάθε εργασία στο Linux διαχειρίζεται με την εκχώρηση μιας διαδοχικής IP εργασίας που σχετίζεται με μια συγκεκριμένη διαδικασία.

Μια βασική ιδέα για την κατανόηση των θέσεων εργασίας στο Linux είναι οι καταστάσεις τους. Υπάρχουν δύο κύριες καταστάσεις για εργασίες Linux:







  • Σε πρώτο πλάνο
  • Ιστορικό

Εργασίες σε πρώτο πλάνο

Μια εργασία προσκηνίου αναφέρεται σε μια εντολή ή ένα πρόγραμμα που εκτελείται στο κέλυφος και καταλαμβάνει την τερματική συνεδρία μέχρι να ολοκληρωθεί. Ένα παράδειγμα θα ήταν η εκκίνηση ενός διαχειριστή αρχείων ή προγράμματος περιήγησης στο τερματικό



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







Στην παραπάνω εικόνα, η ερώτηση κελύφους δεν είναι διαθέσιμη μέχρι να κλείσει το παράθυρο του Firefox.

Εργασίες στο παρασκήνιο

Το αντίθετο του προσκηνίου είναι οι εργασίες παρασκηνίου. Για να ξεκινήσουμε μια εργασία στο κέλυφος ως εργασία στο παρασκήνιο, χρησιμοποιούμε το σύμβολο ampersand (&). Χρησιμοποιώντας αυτό λέει στο κέλυφος να βάλει όποιες εντολές έρχονται πριν από το ampersand στο παρασκήνιο και να εμφανίσει αμέσως την προτροπή του κελύφους.



Το παρακάτω παράδειγμα δείχνει πώς να τοποθετήσετε την εργασία του Firefox (στο παραπάνω παράδειγμα) στο παρασκήνιο.

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

Θα παρατηρήσετε αριθμητικές τιμές που εμφανίζονται για εργασίες στο παρασκήνιο. Το πρώτο, που υποδεικνύεται με αγκύλες ([]), δείχνει το αναγνωριστικό εργασίας, ενώ η άλλη τιμή υποδεικνύει το PID της διαδικασίας που σχετίζεται με την εργασία.

Πώς να διαχειριστείτε εργασίες στο παρασκήνιο

Η εντολή jobs χειρίζεται τον έλεγχο της εργασίας. Αυτό σας επιτρέπει να δείτε τις εργασίες στο παρασκήνιο.

sudo θέσεις εργασίας

Η εκτέλεση της παραπάνω εντολής εμφανίζει εργασίες στο παρασκήνιο όπως φαίνεται παρακάτω:

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

Ακολουθεί αμέσως μετά τις αγκύλες το σύμβολο συν (+) ή μείον (-). Το σύμβολο συν υποδεικνύει ότι αυτή είναι η τρέχουσα εργασία, ενώ ο αριθμός μείον δείχνει την επόμενη εργασία.

Η επόμενη παρένθεση δείχνει την κατάσταση της εργασίας. Αυτό μπορεί να εκτελείται, να σταματά, να τερματίζεται, να γίνεται ή να εξέρχεται με έναν κωδικό κατάστασης.

Τέλος, το τελευταίο μέρος δείχνει το πραγματικό όνομα της εργασίας.

Εμφάνιση εργασιών με PID

Για να εμφανίσουμε εργασίες παρασκηνίου με τις αντίστοιχες τιμές PID, χρησιμοποιούμε τη σημαία -l ως:

θέσεις εργασίας -ο

Αυτό θα εμφανίσει τις εργασίες φόντου με τις τιμές PID, όπως φαίνεται στην παρακάτω εικόνα.

Εργασίες παρασκηνίου με έξοδο

Ας υποθέσουμε ότι έχουμε μια δουλειά που θέλουμε να εκτελεστεί στο παρασκήνιο και αποβάλλει μια έξοδο στην οθόνη. Για παράδειγμα, στο παραπάνω παράδειγμα, έβαλα την εντολή apt, η οποία έχει πολλή έξοδο στο παρασκήνιο, χωρίς να μπερδέψω το τερματικό μου.

Για να το κάνετε αυτό, μπορείτε να ανακατευθύνετε την έξοδο σε /dev /null ως:

sudo apt-get ενημέρωση >> /dev/μηδενικό&

Πώς να φέρετε την εργασία στο παρασκήνιο σε πρώτο πλάνο

Μπορούμε να φέρουμε στο προσκήνιο εργασίες παρασκηνίου χρησιμοποιώντας την εντολή fg. Για παράδειγμα, για να φέρουμε την εργασία του firefox με Job ID 1 στο παρασκήνιο, μπορούμε να κάνουμε:

fg %1

Αυτό θα φέρει τη δουλειά στο προσκήνιο ως εξής:

[email protected]: ~ $fg %1

firefox

Επιλογές εντολών εργασιών

Η εντολή jobs δεν έχει πολλές επιλογές.

Έχουμε ήδη συζητήσει το -l για την εμφάνιση των θέσεων εργασίας με τα αναγνωριστικά διεργασίας τους.

Άλλες επιλογές που μπορείτε να μεταβιβάσετε στην εντολή εργασίας περιλαμβάνουν:

  • - Αυτό δείχνει τις εργασίες που άλλαξαν την κατάστασή τους από την τελευταία ειδοποίηση. Για παράδειγμα, μια εργασία που έχει αλλάξει από κατάσταση λειτουργίας σε κατάσταση διακοπής.
  • - Παραθέτει μόνο τα PID των θέσεων εργασίας.
  • -r - μόνο δουλειές
  • -μικρό - Εμφανίζει μόνο σταματημένες εργασίες.

Πώς να τερματίσετε ή να σκοτώσετε θέσεις εργασίας

Μπορούμε να τερματίσουμε εργασίες χρησιμοποιώντας την εντολή kill που ακολουθείται είτε από το αναγνωριστικό εργασίας, είτε από μια υπο -συμβολοσειρά, είτε από το αναγνωριστικό διεργασίας.

Σκοτώστε χρησιμοποιώντας το αναγνωριστικό εργασίας

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

σκοτώνω %%

Αυτό θα σκοτώσει την τρέχουσα εργασία. αυτό είναι παρόμοιο με το %+.

Σκοτώστε μια δουλειά με ένα υποσύγχρονο

Σκοτώνει μια εργασία με μια υπο -συμβολοσειρά, το πρόθεμα της υποσύμβασης με το %; ακολουθούμενη από την τιμή υποσύμβασης ως:

σκοτώνω %? gnome-calculator

ΣΗΜΕΙΩΣΗ : Το Linux εκτελεί ταυτόχρονα εργασίες. Αυτό σημαίνει ότι πηδάει μπρος πίσω μεταξύ των διαθέσιμων εργασιών μέχρι να ολοκληρωθούν. Ως εκ τούτου, ο τερματισμός μιας συνεδρίας τερματικού με εργασίες που εκτελούνται θα τερματίσει όλες τις εργασίες σας.

Δεν χρειάζεται να ανησυχείτε για αυτό εάν χρησιμοποιείτε έναν τερματικό πολυπλέκτη όπως το tmux ή την οθόνη, καθώς μπορείτε να τα επανασυνδέσετε.

Πώς να σκοτώσετε τις σταματημένες εργασίες

Για να σκοτώσουμε όλες τις σταματημένες δουλειές, πρέπει να συνδέσουμε δύο εντολές μαζί. Ο πρώτος θα λάβει τα PID όλων των διακοπών εργασίας και ο επόμενος θα σκοτώσει όλες τις παρεχόμενες θέσεις εργασίας.

Για να δείτε τις σταματημένες εργασίες, χρησιμοποιούμε την εντολή

θέσεις εργασίας -μικρό

Αυτή η εντολή εμφανίζει όλες τις σταματημένες εργασίες.

Έχοντας αυτό, μπορούμε να πάρουμε τα PIDs των εργασιών που έχουν σταματήσει και να τα τοποθετήσουμε για να σκοτώσουν την εντολή ως:

sudo σκοτώνω -9 'θέσεις εργασίας -μικρό'

Αυτό θα σκοτώσει όλες τις σταματημένες δουλειές.

συμπέρασμα

Αυτό το σεμινάριο εξέτασε τις έννοιες του ελέγχου της εργασίας στο Linux και πώς να λάβετε πληροφορίες σχετικά με τις θέσεις εργασίας. Είναι καλό να σημειωθεί ότι ο έλεγχος εργασίας μπορεί να μην είναι διαθέσιμος ανάλογα με το κέλυφος της επιλογής σας.

Σας ευχαριστούμε που διαβάσατε & Happy Shells.