Wiki workshop · Ελληνικά

Ασκήσεις Shell Scripting: Προχωρημένη ασφάλεια

Πρακτικές Bash ασκήσεις για προχωρημένη ασφάλεια με syntax check, dry-run, evidence και recovery.

Παραδείγματα workshop σε ZIP
Πρόοδος μάθησης στη web app

Σημειώστε κεφάλαια ως αναγνωσμένα, δείτε την πρόοδο ανάγνωσης και ολοκληρώστε πρακτικές ενότητες αφού ενεργοποιήσετε την προαιρετική web app. Η πρόοδος του workshop υπολογίζεται από τα κεφάλαια όλων των σελίδων τεκμηρίωσης. Οι επιλογές μένουν σε αυτή τη συσκευή· δεν υπάρχει λογαριασμός ή συγχρονισμός με server. Δεν απαιτείται εγκατάσταση. Η ανάκληση στις Ρυθμίσεις απορρήτου διαγράφει την πρόοδο.

Πρόοδος ανάγνωσης0%
0%
0 / 5 κεφάλαια που διαβάστηκαν
Άλλη γλωσσική έκδοσηΓερμανικά ↗Αγγλικά ↗

Ασκήσεις Shell Scripting: Προχωρημένη ασφάλεια

Οι ασκήσεις εμβαθύνουν στο θέμα: Threat modeling, προστασία από injection, secrets, permissions, ασφαλής διαγραφή και incident response. Κάθε εργασία απαιτεί αναπαραγώγιμο evidence, όχι μόνο περιγραφή.

Μορφή υποβολής

  • script ή patch
  • δοκιμαστικά δεδομένα που χρησιμοποιήθηκαν
  • εντολές που εκτελέστηκαν
  • exit codes
  • σύντομη σημείωση κινδύνου και recovery
01 / 05

Εργασίες

Εργασία 01: quoting

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «quoting».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 02: exit codes

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «exit codes».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 03: pipelines

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «pipelines».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 04: getopts

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «getopts».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 05: trap

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «trap».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 06: mktemp

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «mktemp».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 07: text processing

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «text processing».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 08: security

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «security».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 09: quoting

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «quoting».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 10: exit codes

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «exit codes».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 11: pipelines

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «pipelines».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 12: getopts

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «getopts».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 13: trap

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «trap».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 14: mktemp

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «mktemp».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 15: text processing

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «text processing».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 16: security

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «security».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 17: quoting

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «quoting».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 18: exit codes

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «exit codes».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 19: pipelines

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «pipelines».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 20: getopts

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «getopts».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 21: trap

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «trap».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 22: mktemp

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «mktemp».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 23: text processing

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «text processing».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 24: security

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «security».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 25: quoting

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «quoting».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 26: exit codes

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «exit codes».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 27: pipelines

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «pipelines».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 28: getopts

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «getopts».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 29: trap

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «trap».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 30: mktemp

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «mktemp».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 31: text processing

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «text processing».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 32: security

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «security».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 33: quoting

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «quoting».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 34: exit codes

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «exit codes».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 35: pipelines

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «pipelines».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Εργασία 36: getopts

Δημιουργήστε μικρό script ή βελτιώστε υπάρχον παράδειγμα με έμφαση στο θέμα «getopts».

Απαιτήσεις:

  • Το bash -n πρέπει να ολοκληρώνεται επιτυχώς.
  • Μη έγκυρα inputs πρέπει να επιστρέφουν εξηγήσιμο exit code.
  • Το output για ανθρώπους και το machine-readable output πρέπει να διαχωρίζονται.
  • Το script δεν πρέπει να χρησιμοποιεί production paths ή secrets.

Evidence:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"
02 / 05

Σημειώσεις λύσης

Χρησιμοποιήστε μικρές functions, συνεπές quoting και σαφή function usage. Καταγράψτε πρώτα τη διαδρομή σφάλματος και έπειτα την επιτυχημένη διαδρομή. Το dry-run είναι υποχρεωτικό για καταστροφικές ενέργειες.

03 / 05

Λίστα ελέγχου review για τις ασκήσεις: Προχωρημένη ασφάλεια

  • 01. κατονομάστε ρητά το shebang και το target shell: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 02. χρησιμοποιήστε quoting για variable expansions, εκτός αν το word splitting είναι σκόπιμο: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 03. επαληθεύστε τα inputs πριν επηρεάσουν filenames, options ή commands: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 04. αξιολογήστε και τεκμηριώστε ρητά τα exit codes: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 05. διαχωρίστε stderr και stdout: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 06. δημιουργήστε προσωρινά αρχεία με mktemp: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 07. δοκιμάστε το cleanup μέσω trap: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 08. προστατεύστε τις καταστροφικές ενέργειες με dry-run, ελέγχους scope και επιβεβαίωση: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 09. μην εκτυπώνετε και μην κάνετε commit τα secrets: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 10. ελέγξτε το PATH και τις εξωτερικές εξαρτήσεις: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 11. αντιμετωπίστε τα ShellCheck warnings ή αιτιολογήστε την καταστολή τους: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 12. τεκμηριώστε τις παραδοχές φορητότητας μεταξύ Bash και POSIX sh: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 13. κατονομάστε ρητά το shebang και το target shell: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 14. χρησιμοποιήστε quoting για variable expansions, εκτός αν το word splitting είναι σκόπιμο: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 15. επαληθεύστε τα inputs πριν επηρεάσουν filenames, options ή commands: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 16. αξιολογήστε και τεκμηριώστε ρητά τα exit codes: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 17. διαχωρίστε stderr και stdout: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 18. δημιουργήστε προσωρινά αρχεία με mktemp: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 19. δοκιμάστε το cleanup μέσω trap: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 20. προστατεύστε τις καταστροφικές ενέργειες με dry-run, ελέγχους scope και επιβεβαίωση: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 21. μην εκτυπώνετε και μην κάνετε commit τα secrets: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 22. ελέγξτε το PATH και τις εξωτερικές εξαρτήσεις: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 23. αντιμετωπίστε τα ShellCheck warnings ή αιτιολογήστε την καταστολή τους: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 24. τεκμηριώστε τις παραδοχές φορητότητας μεταξύ Bash και POSIX sh: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 25. κατονομάστε ρητά το shebang και το target shell: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 26. χρησιμοποιήστε quoting για variable expansions, εκτός αν το word splitting είναι σκόπιμο: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 27. επαληθεύστε τα inputs πριν επηρεάσουν filenames, options ή commands: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 28. αξιολογήστε και τεκμηριώστε ρητά τα exit codes: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 29. διαχωρίστε stderr και stdout: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 30. δημιουργήστε προσωρινά αρχεία με mktemp: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 31. δοκιμάστε το cleanup μέσω trap: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 32. προστατεύστε τις καταστροφικές ενέργειες με dry-run, ελέγχους scope και επιβεβαίωση: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 33. μην εκτυπώνετε και μην κάνετε commit τα secrets: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 34. ελέγξτε το PATH και τις εξωτερικές εξαρτήσεις: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 35. αντιμετωπίστε τα ShellCheck warnings ή αιτιολογήστε την καταστολή τους: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 36. τεκμηριώστε τις παραδοχές φορητότητας μεταξύ Bash και POSIX sh: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 37. κατονομάστε ρητά το shebang και το target shell: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 38. χρησιμοποιήστε quoting για variable expansions, εκτός αν το word splitting είναι σκόπιμο: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 39. επαληθεύστε τα inputs πριν επηρεάσουν filenames, options ή commands: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 40. αξιολογήστε και τεκμηριώστε ρητά τα exit codes: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 41. διαχωρίστε stderr και stdout: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 42. δημιουργήστε προσωρινά αρχεία με mktemp: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 43. δοκιμάστε το cleanup μέσω trap: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 44. προστατεύστε τις καταστροφικές ενέργειες με dry-run, ελέγχους scope και επιβεβαίωση: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 45. μην εκτυπώνετε και μην κάνετε commit τα secrets: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 46. ελέγξτε το PATH και τις εξωτερικές εξαρτήσεις: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 47. αντιμετωπίστε τα ShellCheck warnings ή αιτιολογήστε την καταστολή τους: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 48. τεκμηριώστε τις παραδοχές φορητότητας μεταξύ Bash και POSIX sh: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 49. κατονομάστε ρητά το shebang και το target shell: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
  • 50. χρησιμοποιήστε quoting για variable expansions, εκτός αν το word splitting είναι σκόπιμο: Καταγράψτε το επηρεαζόμενο αρχείο, την εντολή, το exit code και τον κίνδυνο.
04 / 05

Πρακτικό παράρτημα ασκήσεων: Προχωρημένη ασφάλεια

Το παράρτημα είναι backlog εργασίας για μεγαλύτερα trainings, reviews και επαναλήψεις. Κάθε εργασία μπορεί να ελεγχθεί τοπικά με Bash, δοκιμαστικά δεδομένα και Git workspace.

A001. quoting

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A002. exit codes

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A003. pipelines

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A004. getopts

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A005. trap

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A006. mktemp

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A007. text processing

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A008. security

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A009. quoting

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A010. exit codes

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A011. pipelines

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A012. getopts

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A013. trap

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A014. mktemp

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A015. text processing

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A016. security

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A017. quoting

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A018. exit codes

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A019. pipelines

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A020. getopts

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A021. trap

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A022. mktemp

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A023. text processing

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A024. security

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A025. quoting

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A026. exit codes

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A027. pipelines

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A028. getopts

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A029. trap

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A030. mktemp

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A031. text processing

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A032. security

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A033. quoting

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A034. exit codes

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A035. pipelines

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A036. getopts

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A037. trap

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A038. mktemp

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A039. text processing

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A040. security

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A041. quoting

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A042. exit codes

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A043. pipelines

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A044. getopts

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A045. trap

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A046. mktemp

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A047. text processing

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A048. security

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A049. quoting

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A050. exit codes

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A051. pipelines

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A052. getopts

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A053. trap

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A054. mktemp

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A055. text processing

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A056. security

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A057. quoting

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A058. exit codes

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A059. pipelines

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A060. getopts

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A061. trap

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A062. mktemp

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A063. text processing

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A064. security

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A065. quoting

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A066. exit codes

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A067. pipelines

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A068. getopts

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A069. trap

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A070. mktemp

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A071. text processing

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A072. security

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A073. quoting

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A074. exit codes

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A075. pipelines

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A076. getopts

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A077. trap

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A078. mktemp

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A079. text processing

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A080. security

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A081. quoting

  • Εργασία: επαληθεύστε το input και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A082. exit codes

  • Εργασία: εξηγήστε το exit code και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A083. pipelines

  • Εργασία: ελέγξτε το quoting και συνδέστε ρητά την παρατήρηση με το θέμα pipelines.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A084. getopts

  • Εργασία: δοκιμάστε τη διαδρομή σφάλματος και συνδέστε ρητά την παρατήρηση με το θέμα getopts.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A085. trap

  • Εργασία: εξετάστε το log output και συνδέστε ρητά την παρατήρηση με το θέμα trap.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A086. mktemp

  • Εργασία: παρακολουθήστε το cleanup και συνδέστε ρητά την παρατήρηση με το θέμα mktemp.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A087. text processing

  • Εργασία: οριοθετήστε τη φορητότητα και συνδέστε ρητά την παρατήρηση με το θέμα text processing.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A088. security

  • Εργασία: σημειώστε τον κίνδυνο ασφάλειας και συνδέστε ρητά την παρατήρηση με το θέμα security.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A089. quoting

  • Εργασία: τεκμηριώστε τη διαδρομή αποκατάστασης και συνδέστε ρητά την παρατήρηση με το θέμα quoting.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.

A090. exit codes

  • Εργασία: γράψτε κανόνα review και συνδέστε ρητά την παρατήρηση με το θέμα exit codes.
  • Evidence: Καταγράψτε την ελεγμένη εντολή, το αναμενόμενο output, το πραγματικό output και το exit code.
  • Λειτουργικό ερώτημα: Τι συμβαίνει με κενό input, αρχεία ή εργαλεία που λείπουν και επαναλαμβανόμενη εκτέλεση;
  • Ερώτημα ασφάλειας: Μπορεί το input να γίνει option, path, glob, subshell, έκφραση eval ή διαρροή secret;
  • Recovery: Περιγράψτε revert, cleanup, restore, rotation secret ή χειροκίνητη διόρθωση.
05 / 05

SH · Orthevs Academy

31 modules ως ενιαία διαδρομή μάθησης.

Η σειρά παραμένει αμετάβλητη: από τη βασική δομή του lab μέσω τεχνικών θεμελίων και λειτουργικών μοντέλων έως το τελικό troubleshooting. Τα τεχνικά ονόματα καταλόγων διατηρούνται σκόπιμα.

Orthevs – Η μηχανική ως βάση για όσα ακολουθούν.

Το Orthevs ως εφαρμογή

Εγκατάσταση του Orthevs

Η web app του Orthevs μπορεί να εγκατασταθεί σε υποστηριζόμενες κινητές συσκευές και browsers υπολογιστή.

iPhone και iPad

Ανοίξτε το Orthevs στο Safari. Πατήστε Κοινή χρήση και μετά Προσθήκη στην οθόνη αφετηρίας. Ενεργοποιήστε το Άνοιγμα ως web app, αν εμφανίζεται, και πατήστε Προσθήκη.

Android

Για τη web app, ανοίξτε το μενού του browser και επιλέξτε Εγκατάσταση εφαρμογής ή Προσθήκη στην αρχική οθόνη. Επιβεβαιώστε την εγκατάσταση.

Browser υπολογιστή

Ανοίξτε το μενού του browser ή το εικονίδιο εγκατάστασης στη γραμμή διευθύνσεων και επιλέξτε Εγκατάσταση εφαρμογής ή Προσθήκη στο Dock.

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