συστήματα

Γνώση Υπολογιστών >> συστήματα >  >> Unix

Πόσες εντολές μπορείτε να διοχετεύσετε μαζί στο UNIX;

Δεν υπάρχει σκληρό όριο στον αριθμό των εντολών που μπορείτε να μεταφέρετε μαζί στο UNIX.

Τεχνικά, μπορείτε να αλιοποιήσετε μαζί όσες εντολές θέλετε , εφ 'όσον:

* Οι πόροι του συστήματος σας επιτρέπουν: Θα χρειαστείτε αρκετή μνήμη και επεξεργασία ισχύος για να χειριστείτε τον πολύπλοκο αγωγό.

* Η έξοδος κάθε εντολής είναι συμβατή με την είσοδο του επόμενου: Για παράδειγμα, η έξοδος του `ls -l` μπορεί να διοχετευτεί σε` grep file.txt` επειδή η έξοδος του `ls -l` περιλαμβάνει ονόματα αρχείων που μπορεί να αναζητήσει` grep`.

Ωστόσο, συνιστάται γενικά να διατηρηθούν οι αγωγοί συνοπτικοί και ευανάγνωστοι για τη συντήρηση.

Οι μακρινοί αγωγοί μπορούν να γίνουν:

* Δύσκολο να εντοπίσει σφάλμα: Μπορεί να είναι δύσκολο να απομονωθεί η πηγή σφαλμάτων σε μια μακρά αλυσίδα εντολών.

* Δύσκολο να κατανοηθεί: Οι πολύπλοκες αγωγοί μπορούν να γίνουν δυσανάγνωστοι και σύγχρονες.

Αντί να δημιουργήσετε υπερβολικά μακρούς αγωγούς, σκεφτείτε:

* Καταρρίπτοντας την εργασία σε μικρότερα, πιο εύχρηστα βήματα.

* Χρησιμοποιώντας σενάρια κελύφους για να οργανώσετε τις εντολές και να τα κάνετε επαναχρησιμοποιήσιμα.

* Χρησιμοποιώντας εργαλεία όπως `xargs` για να επεξεργαστείτε την έξοδο μιας εντολής σε παρτίδες.

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα