expr
expr adalah utilitas antarmuka baris perintah Unix yang mengevaluasi suatu ekspresi dan output nilai yang sesuai. Utilitas ini pertama kali muncul di Unix v7.
Sintaks: expr (ekspresi)
expr mengevaluasi integer atau string ekspresi, termasuk pola pencocokan ekspresi reguler. Sebagian besar dari tantangan yang ditimbulkan dalam penulisan ekspresi mencegah permintaan command line shell dari tindakan pada karakter dimaksudkan untuk diproses oleh expr.
Operator yang tersedia
- untuk bilangan bulat: penambahan, pengurangan, perkalian, pembagian dan modulus
- untuk string: menemukan ekspresi reguler, menemukan satu set karakter dalam sebuah string; dalam beberapa versi: menemukan substring, panjang dari string
- keduanya: perbandingan (sama dengan, tidak sama dengan, kurang dari, dll.)
Berikut adalah contoh yang melibatkan ekspresi boolean:
expr length "abcdef" "<" 5 "|" 15 - 4 ">" 8
Pada contoh ini menghasilkan output "1". Ini terjadi karena panjang "abcdef" adalah 6, yang tidak kurang dari 5 (sisi kiri | kembali nol). Tapi minus 15 4 11 dan lebih besar dari 8, jadi sisi kanan adalah benar, yang membuat atau benar, jadi 1 adalah hasil. Program exit status adalah nol untuk contoh ini.
Untuk aritmetika murni, sering kali lebih mudah untuk menggunakan bc. Misalnya:
echo "3*4+14/2" | bc
karena ia menerima ekspresi sebagai satu argumen.
Untuk pemrograman shell portabel, penggunaan panjang dan perintah substr ini tidak dianjurkan.
Pranala luar
sunting- Templat:Man/SUS : evaluate arguments as an expression –
- expr invocation in GNU coreutils manual Diarsipkan 2021-04-27 di Wayback Machine.