Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Bash if/else错误_Linux_Bash - Fatal编程技术网

Linux Bash if/else错误

Linux Bash if/else错误,linux,bash,Linux,Bash,我正在用bash编写一个脚本来编译程序,第84行的if/else语句不起作用。我得到这个错误: /build2.sh:84:[:否:意外运算符 有什么问题? 提前谢谢!“不起作用”非常微弱。不过,我会试试 如果在未键入任何回复的情况下按enter键,$putProgramOn为空,并且 if[$putProgramOn==“no”]解析为if[==“no”],这是一个语法错误,因此您至少需要在条件中引用回复: if [ "$putProgramOn" == "no" ] 另见 顺便说一句:使

我正在用bash编写一个脚本来编译程序,第84行的if/else语句不起作用。我得到这个错误:

/build2.sh:84:[:否:意外运算符

有什么问题?

提前谢谢!

“不起作用”非常微弱。不过,我会试试

如果在未键入任何回复的情况下按enter键,
$putProgramOn
为空,并且
if[$putProgramOn==“no”]
解析为
if[==“no”]
,这是一个语法错误,因此您至少需要在条件中引用回复:

if [ "$putProgramOn" == "no" ]
另见

顺便说一句:使用esac,您可以简单地计算快捷方式“y”和“n”:

read -p 'Would you like to put the program on the flash drive? Awnser yes or no: ' putProgramOn

case "$putProgramOn" in
n|no)
    echo "putProgramOn=no"
    ;;
y|yes)
    echo "putProgramOn=yes"
    ;;
*)
    echo "putProgramOn=\"putProgramOn\""
    exit 1
    ;;
esac

请在问题本身中包含A,而不是链接其他地方。是否尝试为PATSUBALON传递空字符串?通过它运行代码会捕获脚本中的一些问题,其中一个问题可能是SMA对输入的正确性。在检查<代码之前,您可能需要考虑使用<代码> Sootts NoCaseMaCuth<代码>。>$putProgramOn作为
“否”
,因为
“否”
“否”
将导致它失败,然后设置
shopt-u nocasematch
。请参阅中的。如果您只是要测试小写响应,则应在之前设置
shopt-s nocasematch
,之后将
shopt-u nocasematch
设置为大写字母“N”或“Y”等。请参阅我对John Roper问题的评论。”${putProgramOn,,}“也是可能的[