Linux Scripting Κεφάλαιο 5 – Εισαγωγή στα shell scripts
Δημοσιεύτηκε από τον/την codebrakes στις
Linux Scripting
Κεφάλαιο 5 - Εισαγωγή στα shell scripts
Τι είναι ένα shell script
Ένα shell script είναι ένα πρόγραμμα που περιέχει ένα σύνολο από εντολές οι οποίες τρέχουν μόνο σε Unix λειτουργικά συστήματα. Συνήθως τα shells είναι δια-δραστικά. Δηλαδή ένα shell δέχεται μια εντολή από τον χρήστη (π.χ. πληκτρολόγηση αριθμού ή κάποιας συμβολοσειράς) και αποθηκεύει αυτήν την πληροφορία σε μια μεταβλητή.
Μεταβλητές (Variables): Στην επιστήμη υπολογιστών μια μεταβλητή είναι ένας χώρος όπου μπορούμε να αποθηκεύσουμε σε αυτόν μια τιμή η οποία μπορεί να είναι ένας αριθμός, κείμενο κλπ. Συνήθως όταν ορίζουμε κάποιες μεταβλητές στο πρόγραμμα μας πρέπει να έχουν ένα συμβολικό όνομα γι’ αυτό που πρόκειται να αποθηκευτεί σε αυτές. Μπορούμε να δούμε, να διαγράψουμε, να επεξεργαστούμε ή να αποθηκεύσουμε μια πληροφορία σε μια μεταβλητή. Οι μεταβλητές αναλαμβάνουν έναν πολύ σημαντικό ρόλο στο προγραμματιστικό κομμάτι καθότι επιτρέπουν στους προγραμματιστές να σχεδιάζουν ευέλικτα και διαδραστικά προγράμματα.
Έστω το παρακάτω shell script:
Όταν εκτελέσουμε το script θα μας εμφανίσει τα εξής στην οθόνη:
codebrakes@mint:~$ ./first_script.sh
Ποιο είναι το όνομα σου ;
Δημήτρης
Το όνομα σου είναι Δημήτρης
Μεταβλητές Περιβάλλοντος
Τι είναι όμως οι μεταβλητές περιβάλλοντος (environment variables) ;;;
Είναι δυναμικές τιμές οι οποίες μπορούν να επηρεάσουν διάφορες διεργασίες ή προγράμματα που τρέχουν σε έναν υπολογιστή.
- Υπάρχουν σε κάθε λειτουργικό σύστημα και δίνουν πληροφορίες σχετικά με αυτό.
- Οι μεταβλητές αυτές μπορούν να αλλάξουν τον τρόπο με τον οποίο ένα λογισμικό ή ένα πρόγραμμα ανταποκρίνεται.
Ένα παράδειγμα μεταβλητής περιβάλλοντος είναι η μεταβλητή OSTYPE όπου μας εμφανίζει τον τύπο έκδοσης του linux λειτουργικού συστήματος που χρησιμοποιούμε.
echo $OSTYPE
$PATH: Όταν πληκτρολογούμε μια εντολή στο τερματικό των linux το σύστημα (shell) πρέπει να βρει αυτήν την εντολή ή αυτό το πρόγραμμα. Αν γράψουμε στο τερματικό bin/ls τότε το shell θα κοιτάξει κατευθείαν στο /bin φάκελο του συστήματος για να βρει την εντολή ls. Αν γράψουμε κατευθείαν ls τότε πρέπει το shell να ψάξει την εντολή ls και σε ποιο φάκελο βρίσκεται. Αυτή η λίστα είναι η μεταβλητή περιβάλλοντός PATH.
codebrakes@mint:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
$USER: Εμφανίζει το όνομα του χρήστη
codebrakes@mint:~$ echo $USER
codebrakes
$HOME Εμφανίζει το μονοπάτι του αρχικού καταλόγου
codebrakes@mint:~$ echo $HOME
/home/codebrakes
Τελευταία ενημέρωση: 10/05/2018