开发者社区 问答 正文

shell 写for循环,for循环第一行写if报错??报错

比如for i in {1,,10}

                if   [    $a -eq   9         ]                      

就报错了,是shell不允许这种写法?代码没有问题,换行就好了。在python上这么写是没错的。 请指教下。

 

展开
收起
爱吃鱼的程序员 2020-06-06 10:45:40 615 分享 版权
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        <p>如果要写在同一行是需要使用分号“;”分隔不同语句的结束的。</p> 
    

    如下编写可正常运行: 

    for i in {1..10}; do if [ ${i} -eq 9 ]; then echo now is : ${i}; fi; done

     

                            回复 <a class="referer" target="_blank">@u啊welcome</a>  : 没有关系
    
                        
    
                            非常抱歉,忘记把你设为最佳答案,非常感谢您的回答
                        
    
                            我去试一下
                        
    
                        <p>Python是Python,Shell是Shell,两者的语言格式不一样,看一下Shell语法基础吧!</p>
                    
    
                        <div class="ref">
    

    引用来自“Tevisky”的评论

    如果要写在同一行是需要使用分号“;”分隔不同语句的结束的。

    如下编写可正常运行: 

    for i in {1..10}; do if [ ${i} -eq 9 ]; then echo now is : ${i}; fi; done

     

    2020-06-06 10:45:53
    赞同 展开评论
问答分类:
问答标签:
问答地址: