Ste*_*eam 0 unix linux bash boolean
我尝试了这篇SO帖子中的代码 - 如何评估bash中if块中的布尔变量?它不起作用.看起来BASH中没有布尔值.有没有完美的解决方法让我在BASH中设置和检查布尔值?
我的代码 -
#!/bin/bash
flag=true
if [ $flag ]
echo 'True'
#flag=false
#echo 'Now changed to false'
fi
Run Code Online (Sandbox Code Playgroud)
即使第2行中的flag = false,输出仍为True.为什么?
Cri*_*ses 10
尝试没有方括号,像这样
#!/bin/bash
flag=true
if $flag ; then
echo 'True'
#flag=false
#echo 'Now changed to false'
fi
Run Code Online (Sandbox Code Playgroud)