Μετάβαση στο περιεχόμενο

expr

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια


Η expr είναι ένα εργαλείο της γραμμής εντολών του Unix που αποτιμά μια έκφραση και εμφανίζει την αντίστοιχη τιμή.

Σύνταξη: expr (έκφραση)

Η expr υπολογίζει εκφράσεις ακεραίων ή συμβολοσειρών και περιλαμβάνει ταίριασμα κανονικών εκφράσεων. Η δυσκολία στη συγγραφή εκφράσεων οφείλεται στο ότι η γραμμή εντολών πρέπει να μην εκτελεί τους ειδικούς χαρακτήρες όταν αυτοί βρίσκονται μέσα σε μια έκφραση που πρόκειται να εκτελέσει η expr.

Υπάρχουν διαθέσιμοι οι εξής τελεστές

  • για ακεραίους: πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση και υπόλοιπο
  • για συμβολοσειρές: εύρεση τμήματος συμβολοσειράς, εύρεση κανονικής έκφρασης, εύρεση ενός συνόλου χαρακτήρων σε μια συμβολοσειρά, μήκος συμβολοσειράς
  • για ακεραίους και συμβολοσειρές: σύγκριση (ίσο, όχι ίσο, μικρότερο από, κλπ..)

Επίσης μια έκφραση τιμής αληθείας που χρησιμοποιεί και και ή, όπως η:

expr length  "abcdef"  "<"  5  "|"  15  -  4  ">"  8

παράγει την τιμή "1". Αυτό οφείλεται στο ότι το μήκος της "abcdef" είναι 6, που δεν είναι μικρότερο του 5 (και το αριστερό μέλος του | επιστρέφει μηδέν). Αλλά 15 μείον 4 είναι 11 που είναι μεγαλύτερο του 8, και το δεξιό μέλος είναι αληθές, που κάνει το ή αληθές, επομένως το αποτέλεσμα είναι 1. Η κατάσταση εξόδου του προγράμματος είναι μηδέν σε αυτό το παράδειγμα.

Για αμιγώς αριθμητικές πράξεις, ίσως να είναι βολική η χρήση του bc, π.χ.

echo "3*4+14/2" | bc

γιατί δέχεται την έκφραση σαν μοναδικό όρισμα.

Εξωτερικοί σύνδεσμοι

[Επεξεργασία | επεξεργασία κώδικα]