Δημοσιεύτηκε: 25 Μάιος 2011, 20:04
από ftso
kikirikou έγραψε:Πολύ χρήσιμη λίστα :thumbup:

αν μπορείς εξήγησε λίγο το
Κώδικας: Επιλογή όλων
[ $[ $RANDOM % 6 ] == 0 ] && ( Οποιαδήποτε εντολή εδώ ) || echo "Something here"

Το [ $[ $RANDOM % 6 ] == 0 ] εξετάζει αν η συνθήκη που περιέχεται είναι αληθής.
Αυτό θα συμβεί στην περίπτωση που η πράξη $RANDOM % 6 φέρει αποτέλεσμα μηδέν.
Η $RANDOM δίνει ένα τυχαίο αριθμό. Εκτέλεσε echo $RANDOM για να δεις.
To % 6 (πράξη modulo) διαιρεί τον αριθμό που έδωσε η $RANDOM και επιστρέφει το υπόλοιπο το οποίο θα είναι μηδέν μόνο στην περίπτωση που η διαίρεση είναι τέλεια.
Διαφορετικά θα είναι ένας ακέραιος από το 1-5.
Εκτέλεσε αρκετές φορές την εντολή let x=$RANDOM%6 ; echo $x για να δεις τα αποτελέσματα.

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

Το || είναι το λογικό OR και θα εκτελέσει οποιαδήποτε συνθήκη είναι αληθής.
Δηλαδή την
[ $[ $RANDOM % 6 ] == 0 ] && ( Οποιαδήποτε εντολή εδώ )
ή την
echo "Something here"

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

Αυτά :)