Εξαίρεση σε εργασίες που εκτελείτε στο Bash

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

Για να το καταλάβω καλύτερα, έχω ένα φάκελο (αρχεία) και μέσα σε αυτό 4 αρχεία (doc.txt, file.mp4, list.txt και thesis.doc), Θέλω να αλλάξω την άδεια αυτών των αρχείων, έτσι ώστε μόνο ο κάτοχος να έχει πρόσβαση, να το κάνει εκτός από το lista.txt, ότι θέλω όλοι να μπορούν να δουν, δηλαδή ότι δεν αλλάζουν τα δικαιώματά τους.

Συνοψίζοντας:

  • doc.txt, file.mp4 και thesis.doc μπορούν να προβληθούν ΜΟΝΟ από τον κάτοχο
  • list.txt μπορεί να δει ο καθένας, δηλαδή, δεν θέλω τα δικαιώματά τους να διαφέρουν.

Για να το επιτύχω αυτό μπορώ να αλλάξω τα δικαιώματα σε όλα τα αρχεία και μετά να αλλάξω επίσης τα δικαιώματα στο list.txt έτσι ώστε να τα έχουν όπως πριν. Αυτό θα ήταν δύο γραμμές ... αλλά, όπως σχεδόν πάντα στο Linux, υπάρχει ένας τρόπος βελτιστοποίησης 😉

βίαιο χτύπημα

Ας δούμε πώς:

  1. Για να αλλάξουμε τα δικαιώματα στα οποία έχει πρόσβαση μόνο ο κάτοχος θα χρησιμοποιήσουμε: chmod 700
  2. Για να αλλάξετε τα δικαιώματα σε όλα τα αρχεία σε αυτόν τον φάκελο (Θυμάμαι ότι ονομάζεται: αρχεία) θα το χρησιμοποιησουμε: εγγραφές /
  3. Για να εξαιρέσουμε το αρχείο list.txt θα χρησιμοποιήσουμε: /!(list.txt)

Με άλλα λόγια, η τελική εντολή θα ήταν:

chmod 700 archivos/!(lista.txt)

Είναι τόσο απλό, εδώ είναι ένα στιγμιότυπο οθόνης των δικαιωμάτων πριν από τα αρχεία σε αυτόν τον φάκελο, την εκτέλεση της εντολής και, στη συνέχεια, πώς είναι τα δικαιώματα:
exclude-chmod-bash

Σε περίπτωση που θέλουμε να εξαιρέσουμε περισσότερα από ένα αρχεία, για παράδειγμα lista.txt συν thesis.doc , μπορούμε να διαχωρίσουμε αυτά τα αρχεία με | … αυτό είναι:

chmod 700 archivos/!(lista.txt|tesis.doc)

Τι είναι απλό; 😀

Λοιπόν, τίποτα περισσότερο να προσθέσετε, είναι απλότητα, αλλά όταν εργάζεστε με μεγάλους όγκους πληροφοριών, μπορεί να σώσει την ημέρα 😉

i-love-bin-bash_by-kzkggaara


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   Erick dijo

    Η αλήθεια δεν θα μου είχε συμβεί ποτέ, για να αποκλείσω αν και μερικές φορές έχω συναντήσει αυτό το δίλημμα, Χαιρετισμούς

  2.   Νίκος dijo

    Εξαιρετική συμβουλή, χαιρετισμούς

  3.   Χοσέ Εμίλιο Μπάδια Βαλντές dijo

    Kaze, είμαι ο emilio del ipi cepero bonilla, πώς είσαι; Ευχαριστώ για το άρθρο, μου έδωσε ποσότητα

    1.    KZKG ^ Γκάρα dijo

      Γεια σου, πώς είσαι παιδί;

  4.   PegasusOnline dijo

    Πολύ καλά !!!!!

    ευχαριστώ που το μοιράστηκες