Meniadakan variabel boolean dan menetapkannya ke variabel baru [duplikat]
Dalam skrip Bash, saya ingin mendefinisikan variabel boolean y
untuk menyimpan nilai yang dinegasikan dari variabel boolean lainnya x
. Script berikut,
#!/bin/bash
x=true
y=$(( ! "${x}" ))
echo "${y}"
menetapkan variabel y
ke 1. Bagaimana saya bisa mengubahnya y
sehingga dievaluasi false
sebagai gantinya?
Jawaban
3 axiac
Bash tidak memiliki konsep nilai boolean untuk variabel. Nilai variabelnya selalu berupa string. Mereka dapat ditangani sebagai angka dalam beberapa konteks tetapi hanya itu yang dapat dilakukannya.
Anda dapat menggunakan 1
dan 0
sebagai gantinya atau membandingkannya (dengan =
atau ==
) sebagai string dengan true
dan false
dan menganggapnya sebagai boolean. Kode akan lebih mudah dibaca tetapi tetap berupa string :-)
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'