Soal 1Kapan cmd2 berjalan dalam cmd1 && cmd2?
Merangkai Perintah — ; && || dan Tanda Kutip
Pelajari eksekusi berurutan dengan ;, eksekusi bersyarat dengan && (saat berhasil) dan || (saat gagal), serta perbedaan tanda kutip tunggal dan ganda dalam ekspansi variabel — praktik langsung di terminal browser.
Merangkai Perintah — ; && ||
Kamu bisa merangkai beberapa perintah dalam satu baris.
; menjalankannya secara berurutan tanpa peduli hasil perintah sebelumnya.
&& menjalankan perintah berikutnya hanya saat yang sebelumnya berhasil, dan || menjalankan yang berikutnya hanya saat yang sebelumnya gagal.
| Simbol | Menjalankan yang berikut saat | Contoh |
|---|---|---|
; | Selalu, tanpa peduli hasilnya | echo a ; echo b |
&& | Hanya jika yang sebelumnya berhasil (exit status 0) | mkdir d && cd d |
|| | Hanya jika yang sebelumnya gagal (bukan nol) | cat f || echo ng |
; selalu berjalan berurutan, && menjalankan yang berikut saat berhasil, dan || menjalankan yang berikut saat gagal.echo step1 ; echo step2 # jalankan keduanya berurutan
mkdir build && echo created # created jika berhasil
ls missing.txt || echo not-found # not-found jika gagal
Menggabungkan && dan || — Bercabang Inline
Kamu bisa menulis && dan || berturut-turut dalam satu baris.
cmd && echo ok || echo ng menjalankan echo ok jika cmd berhasil, dan echo ng jika gagal.
Ini bentuk andalan saat kamu ingin menulis aksi keberhasilan dan kegagalan di satu tempat.
cmd && echo ok || echo ng menampilkan ok jika cmd berhasil, atau ng jika gagal.mkdir out && echo created || echo failed # created saat berhasil
ls nofile.txt && echo found || echo none # none saat gagal
Perbedaan Tanda Kutip — ' dan "
Ada dua jenis tanda kutip untuk membungkus sebuah string.
Tanda kutip tunggal '...' memperlakukan isinya sebagai karakter literal dan tidak mengganti $VAR.
Tanda kutip ganda "..." mengembangkan $VAR dan $(...) di dalamnya menjadi nilainya.
Keduanya juga dipakai untuk meneruskan string yang mengandung spasi sebagai satu kesatuan.
| Tanda kutip | $VAR | $(...) | Contoh → output |
|---|---|---|---|
'...' (tunggal) | Tidak dikembangkan (literal) | Tidak dikembangkan | echo '$name' → $name |
"..." (ganda) | Dikembangkan menjadi nilai | Dikembangkan menjadi output perintah | echo "$name" → Linux |
$variable menjadi nilainya.place=server
echo 'path is $place' # literal: path is $place
echo "path is $place" # dikembangkan: path is server
Menyisipkan Variabel dan Output Perintah dalam Tanda Kutip Ganda
Di dalam tanda kutip ganda kamu bisa membangun satu string dari variabel dan command substitution sekaligus.
$(...) diganti dengan output perintahnya.
Misalnya, $(pwd) diganti dengan path ke lokasimu saat ini sebelum ditampilkan.
Membungkus dengan tanda kutip ganda juga cara dasar untuk meneruskan nilai yang mengandung spasi sebagai satu argumen.
Apa Sebenarnya Berhasil dan Gagal Itu — Exit Status dan echo $?
'Berhasil atau gagal' yang diawasi && dan || ditentukan oleh sebuah angka bernama exit status yang ditinggalkan sebuah perintah saat selesai.
0 berarti berhasil dan apa pun selain 0 berarti gagal.
Exit status perintah sebelumnya masuk ke variabel khusus $?, yang bisa kamu cek dengan echo $?.
| Exit status | Arti | Cek |
|---|---|---|
0 | Perintah sebelumnya berhasil | echo $? menampilkan 0 |
| bukan nol | Perintah sebelumnya gagal | echo $? menampilkan 1, dst. |
echo $? adalah 0; tepat setelah yang gagal, nilainya bukan nol.ls . # perintah yang berhasil
echo $? # exit status sebelumnya -> 0
cat nofile.txt # perintah yang gagal
echo $? # exit status sebelumnya -> bukan nol (mis. 1)
Cek Pemahaman
Jawab setiap pertanyaan satu per satu.
Soal 2Apa yang ditampilkan echo '$name'? (anggap name=Linux sudah diatur)
Soal 3Mana yang benar tentang peran ||?