NIMI
expr − suorita lausekkeita
YLEISKATSAUS
expr
lauseke...
expr {−−help,−−version}
KUVAUS
Tätä ohjetta ei enää ylläpidetä, joten se saattaa olla epätarkka tai puutteellinen. Texinfo -ohjeisto on nyt ensisijainen tietolähde.
Tämä ohje kuvaa komennon expr GNU-version toiminnan. expr suorittaa lausekkeen ja kirjoittaa tuloksen vakiotulosteeseen. Jokaisen symbolin tulee olla erillinen argumentti. Operandit ovat joko numeroita tai merkkijonoja. Merkkijonoja ei tarvitse sijoittaa lainausmerkkeihin, ellei niitä tarvitse suojata komentotulkilta. expr muuttaa kaikki operandit joko kokonaisluvuiksi tai merkkijonoiksi riippuen suoritettavasta operaatiosta.
Operaattorit (kasvavassa laskujärjestyksessä) ovat:
| |
Palauttaa ensimmäisen argumentin, jos tämä on tyhjä tai 0, muutoin toisen argumentin. Tämä vastaa "tai" operaatiota. | ||
& |
Palauttaa ensimmäisen argumentin, jos kumpikaan argumentti ei ole tyhjä tai 0, muutoin 0:n. |
< <= = == != >= >
Vertaa argumentteja ja palauttaa arvon 1 jos lause on tosi, muutoin 0:n. (== on sama kuin =). expr yrittää muuttaa molemmat argumentit numeroiksi ja suorittaa numerisen vertailun. Jos muunnos epäonnistuu, suoritetaan aakkosellinen merkkijonovertailu.
+ - |
Suorittaa aritmeettisia operaatioita. Molemmat argumentit muutetaan numeroiksi. Jos tämä epäonnistuu, on tilanne virheellinen. |
* / %
Suorittaa aritmeettisia operaatioita ("%" on jakojäännös -operaattori, kuten C:ssä). Molemmat argumentit muutetaan numeroiksi, jos tämä epäonnistuu, on tilanne virheellinen.
: |
Suorittaa hahmonsovituksen. Molemmat argumentit muutetaan merkkijonoiksi ja jälkimmäisen oletetaan olevan säännöllinen lauseke, johon lisätään alkuun "^". Tätä lauseketta sovitetaan ensimmäiseen argumenttiin. Jos sovitus onnistuu, ja osa säännöllisestä lausekkeesta on merkkien "\(" ja "\)" sisällä, on tämä osa : -operaation arvo, muutoin palautetaan sovitettujen merkkien lukumäärä. Jos sovitus ei onnistu, : -operaatio palauttaa tyhjän merkkijonon jos merkkejä "\(" ja "\)" on käytetty, muutoin arvon 0. Merkkiparia "\(" ja "\)" voidaan käyttää vain kerran. |
Myös seuraavat avainsanat
ovat mahdollisia:
match merkkijono säännöllinen
lauseke
Vaihtoehtoinen tapa suorittaa hahmonsovitus. Tämä on sama kuin "merkkijono : säännöllinen lauseke".
substr merkkijono paikka pituus
Palauttaa osan merkkijonoa jonka pituus on enintään pituus alkaen kohdasta paikka. Jos pituus tai paikka on negatiivinen tai ei-numeerinen, palautetaan tyhjä merkkijono.
index merkkijono merkkiryhmä
Palauttaa ensimmäisen kohdan merkkijonosta, jossa on jokin merkkiryhmän määräämä merkki. Jos mikään merkki merkkiryhmästä ei sovi merkkijonoon, palautetaan 0.
length merkkijono
Palauttaa merkkijonon pituuden.
Sulkumerkkejä voidaan käyttää laskujärjestyksen määräämiseen. Avainsanoja ei voi käyttää merkkijonoina.
OPTIOT
Kun GNU expr käynnistetään tasan
yhdellä argumentilla, tunnistetaan seuraavat
optiot:
−−help |
Tulostaa käyttöohjeet vakiotulosteeseen ja poistuu. |
−−version
Tulostaa versiotiedot vakiotulosteeseen ja poistuu.
ESIMERKKEJÄ
Lisää 1 komentotulkin muuttujaan a:
a=`expr $a + 1`
Seuraava tulostaa hakemistopolun, joka on tallennettu muuttujaan a, tiedosto-osan ( a:n arvon ei tarvitse sisältää erotinta "/"):
expr $a : ´.*/\(.*\)´ ´|´ $a
Huomaa lainausmerkit.
expr palauttaa jonkun seuraavista statuksista:
0 jos lauseke
ei ole tyhjä eikä 0,
1 jos lauseke on tyhjä tai 0,
2 jos lauseke on virheellinen.