Bash 如何检查变量是否具有偶数数值?

Bash 如何检查变量是否具有偶数数值?,bash,Bash,我应该如何更改此选项以检查val是否具有偶数或奇数数值 val=2 if $((RANDOM % $val)); ... $(…)只是一个表达式。它的结果出现在bash需要命令的地方 与POSIX兼容的解决方案是: if [ "$(( RANDOM % 2))" -ne 0 ]; 但是由于POSIX中也没有定义RANDOM,因此您也可以对作业使用正确的bash命令:算术求值复合命令: if (( RANDOM % 2 )); then if[$($RANDOM%2))-eq 0];然后呼

我应该如何更改此选项以检查
val
是否具有偶数或奇数数值

val=2
if $((RANDOM % $val)); ...
$(…)
只是一个表达式。它的结果出现在
bash
需要命令的地方

与POSIX兼容的解决方案是:

if [ "$(( RANDOM % 2))" -ne 0 ]; 
但是由于POSIX中也没有定义
RANDOM
,因此您也可以对作业使用正确的
bash
命令:算术求值复合命令:

if (( RANDOM % 2 )); then

if[$($RANDOM%2))-eq 0];然后呼应“甚至”;fi
can workh,我明白了,应该在方括号内留空格。我相信这里的问题是——“数字是偶数,不是奇数?”这里的答案反映了这一点。也许还有其他问题可以回答这个问题。但用于标记问题副本的链接不正确。如果设置了变量,则该问题将回答。@t在重复链接上,这不是标记为重复的问题的重复!这个问题涉及到一个变量是否有赋值(或者它是否存在),这个问题涉及到一个变量的数值是偶数还是奇数。我还没有检查编辑,但也许发问者在第一次发帖后澄清了问题?如何将某个东西标记为错误标记?奇怪的是,
if((随机%2));如果RANDOM不是2的倍数,则
将为真……这与其他语言中常用的惯用法相同。如果(random/2){…},C将有
。Python会有
如果随机/2:…
if (( RANDOM % 2 )); then
foo=6

if [ $((foo%2)) -eq 0 ];
then
    echo "even";
else
    echo "odd";
fi