Pernyataan if
Termasuk bagian Dasar-Dasar dalam perjalanan Terminal di Coddy. Pelajaran 70 dari 82.
Sejauh ini, skripmu menjalankan setiap perintah dari atas ke bawah tanpa mengambil keputusan. Namun, bagaimana jika kamu ingin skripmu melakukan hal yang berbeda berdasarkan kondisi tertentu? Di sinilah pernyataan if berperan.
Pernyataan if memungkinkan skripmu mengambil keputusan. Pernyataan ini memeriksa apakah suatu kondisi bernilai benar, dan jika benar, menjalankan satu blok kode. Berikut struktur dasarnya:
#!/bin/bash
age=18
if [ $age -ge 18 ]; then
echo "You are an adult"
fiKondisi diletakkan di dalam tanda kurung siku dengan spasi di sekelilingnya. Kata kunci then menandai awal kode yang akan dijalankan, dan fi (jika dieja terbalik) mengakhiri pernyataan.
Kamu juga bisa menangani kondisi saat kondisi bernilai false menggunakan else:
#!/bin/bash
age=15
if [ $age -ge 18 ]; then
echo "You are an adult"
else
echo "You are a minor"
fiOperator perbandingan yang umum untuk angka meliputi -eq (sama dengan), -ne (tidak sama dengan), -gt (lebih besar dari), -lt (lebih kecil dari), -ge (lebih besar dari atau sama dengan), dan -le (lebih kecil dari atau sama dengan). Untuk string, gunakan = untuk kesetaraan dan != untuk ketidaksetaraan.
Ingatlah untuk selalu menyertakan spasi di dalam tanda kurung dan mengapit variabelmu dengan tanda kutip agar terhindar dari error saat nilainya kosong.
Tantangan
MudahBuat skrip shell bernama check_score.sh yang menggunakan pernyataan if untuk mengevaluasi nilai tes.
Skripmu harus:
- Dimulai dengan baris shebang (
#!/bin/bash) - Membuat variabel bernama
scoredengan nilai75 - Menggunakan pernyataan if untuk memeriksa apakah nilai tersebut lebih besar dari atau sama dengan 70
- Jika benar, cetak:
You passed! - Jika salah, cetak:
You failed.
Buat skrip tersebut dapat dieksekusi, lalu jalankan. Karena nilainya 75, outputmu seharusnya:
You passed!Petunjuk: Ingat untuk menggunakan
-gesebagai perbandingan “lebih besar dari atau sama dengan”, menyertakan spasi di dalam tanda kurung siku, dan mengakhiri pernyataan if denganfi.Di sini tidak ada editor file, jadi tulis file langsung dari shell menggunakan here-document: ketik
cat > check_score.sh << 'EOF', lalu baris-baris skrip, kemudian baris terakhir yang hanya berisiEOF.
Coba sendiri
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Direktori
Buat DirektoriSalin DirektoriPindahkan dan Ganti Nama DirektoriHapus DirektoriRingkasan: Operasi Direktori7Isi File
Head dan TailJumlah KataPerintah SortPerintah UniqueDasar-Dasar GrepGrep dengan FlagUlasan: Detektif Teks10Proyek Penganalisis Log
Gambaran Umum ProyekMelihat File Log13Dasar-Dasar Shell Scripting
Apa Itu Shell ScriptBuat dan Jalankan ScriptVariabel dalam ScriptInput Pengguna dalam ScriptPernyataan ifFor loopWhile loopRingkasan: Tebak Angka2Navigasi
Tampilkan Direktori KerjaLihat Daftar FileGanti DirektoriJalur Absolut vs RelatifDirektori Home dan RootRingkasan: Temukan Arahmu8Pengalihan
Output StandarMenimpa FileMenambahkan ke FileInput StandarError StandarRangkuman: Pembuat Log6Wildcard dan Pola
Wildcard Tanda BintangWildcard Tanda TanyaWildcard Tanda Kurung SikuMenggabungkan WildcardRangkuman: Operasi Selektif9Penggunaan Pipe
Apa Itu PipeMenghubungkan Dua PerintahMenghubungkan Beberapa PerintahPipe dengan grepRingkasan: Pipeline DataLatihan sendiri: Playground Terminal