为什么我在这里的if语句附近得到一个错误?


for i in {1..10}
if [ $i=5 ]
then
echo "Youve completed 5 iterations, do you wish to continue?"
read input
if [$input ="Yes"]
then
continue
else
break
fi
if [$i==10]
then
break
do     
echo "Iteration no: $i"
echo "Enter a number"
read number
echo "youve entered $number"
done

在深入学习之前,稍微复习一下Bash Scripting的基础知识是有帮助的。

if [ "foo" = "foo" ]
then
echo "Equal"
else
echo "Not Equal"
fi

在Bash脚本中,变量和括号之间的空格很重要,这意味着上面的if语句与[ "foo"=="foo"]不同(注意缺少空格)

现在我们添加一个循环

for i in {1..10}
do
if [ $i -eq 1 ]
then
echo "Equal"
else
echo "Not Equal"
fi
done

如果你在比较整数,你应该使用-eq进行相等比较。

确保你添加了'do'和'done'语句。在代码中使用缩进有助于更容易地跟踪脚本执行。所有超过4个空格的内容都将在循环内执行。

从这里你应该能够构建你的最终脚本检查用户输入。

跳进去尝试新事物很有趣,但一定要参考文档!https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html shell命令

相关内容

  • 没有找到相关文章

最新更新