Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεCalandra Cosse Τροποποιήθηκε πριν 10 χρόνια
1
Εργαστήριο Λειτουργικών Συστημάτων Φροντιστήριο 2– Εισαγωγή στη Bash Ντίρλης Νικόλαος
2
Scripting Μια scripting γλώσσα προγραμματισμού είναι σχεδιασμένη να υποστηρίζει scripts. Scripts ονομάζονται τα προγράμματα αυτά που είναι γραμμένα για ένα ειδικό περιβάλλον, τα οποία μεταγλωττίζουν και αυτοματοποιούν την εκτέλεση tasks που διαφορετικά θα έπρεπε να τα εκτελέσει « με το χέρι » ένας χειριστής. Scripting language = “Glue language” Javascript, PHP, Perl, Python… και Bash!
3
Hello World! Πρώτα πρέπει να εγκαταστήσουμε το bash #pkgin install bash… Έπειτα πρέπει να ξεκινήσουμε το shell #bash Βλέπουμε ένα νέο prompt και τώρα απλά : bash-4.2# echo Hello World! Εναλλακτικά : #vi hello.sh #bash hello.sh
4
Redirection redirect stdout to a file redirect stderr to a file redirect stdout to a stderr redirect stderr to a stdout redirect stderr and stdout to a file redirect stderr and stdout to stdout redirect stderr and stdout to stderr Παράδειγμα : grep * 2>&1 Το stderr ενός προγράμματος ( που είναι unbuffered) θα πάει στο buffered stdout
5
Pipes Χρησιμοποιούμε την έξοδο ενός προγράμματος σαν είσοδο σε ένα άλλο πχ ls|sort ή ls|grep “.\txt” ( Τι κάνουν τα δύο παραπάνω script άκια ;)
6
Μεταβλητές Στην bash δεν υπάρχουν data types Δεν γίνεται δήλωση μεταβλητών Παράδειγμα : #vi example.sh #bash example.sh example.sh: STR=“Hello CEID” echo $STR Προσοχή : το «$» πριν το όνομα της μεταβλητής
7
Τοπικές Μεταβλητές Χρήση local Παράδειγμα : HELLO=“Hello” Function hello { local HELLO=“World” echo $HELLO } Τι θα γίνει αν κάνω echo $HELLO; Αν καλέσω τη “hello”;
8
Conditionals If…then If…then…else If…then…else if…then…else Στην bash έχουμε το σχήμα : If [expression]; then [code if expression=true] else [code is expression=false] fi Σημείωση : το “else if” συντάσσεται ως «elif»
9
Conditionals - Παράδειγμα Προσοχή στα κενά στον κώδικα ! #v1=5 #v2=3 #if [ $v1>$v2 ]; then echo v1 else echo v2 fi Ερώτηση : Τι θα τυπωνόταν αν είχαμε «else echo $v1»;
10
Loops- FOR Η προτεινόμενη δομή για την επαναληπτική δομή FOR είναι : START=1 END=10 for ((i=START; i<=END; i++)) do echo "i: $i" done
11
Loops While - Until WHILE COUNTER=0 while [ $COUNTER -lt 10 ]; do echo The counter is $COUNTER let COUNTER=COUNTER+1 done UNTIL COUNTER=20 until [ $COUNTER -lt 10 ]; do echo COUNTER $COUNTER let COUNTER-=1 done Προσοχή στο “-lt” που έχει τη σημασία του τελεστή « μικρότερο από »
12
Functions function quit { exit } function hello { echo Hello! } #hello #quit
13
Functions with parameters function quit { exit } function e { echo $1 } Τι κάνει η συνάρτηση e; #e Hello #e World #quit
14
User Input echo Please, enter your name read NAME echo "Hi $NAME!“ echo Please, enter your firstname and lastname read FN LN echo "Hi! $LN, $FN !"
15
Arithmetics echo 1+1 Αν θέλαμε να δούμε 2 τότε κάναμε λάθος ! Πώς θα το γράψουμε ; echo $((1+1)) ή echo $[1+1] Τι θα εμφανιστεί ως έξοδος της εντολής echo $[3/4]; Η echo πάντα θα μας εμφανίσει ακέραιο ! Δοκιμάζουμε όμως την εντολή : echo "3/4"| bc Τώρα ;
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.