章节
问答
课签
笔记
评论
占位
占位
今日不再显示

下一节课程: shell多分支if语句例:判断用户输入的是什么文件 (12:28) 下一节 重新观看

3 秒后播放下一节

为你推荐

Tony
Linux系统工程师

十年以上Linux从业经验,培训经验超过八年。在各个知名培训机构做过金牌讲师、学科负责人,培训学员过万人。曾获红帽认证讲师,微软认证讲师等资质认证。教学以逻辑性强、教学细致、知识点准确著称。

提问题

写笔记

代码语言
公开笔记
提交
加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最新回答 / 0文弱书生0
#!/bin/bashread -p "number1: " num1read -p "number2: " num2read -p "ope: " opeif [ -n "$num1" -a -n "$num2" -a -n "$ope" ]        then                test1=$(echo $num1 |sed 's/[0-9]//g')                test2=$(echo $num2 |sed 's/[0-9]//g')        else   ...

最赞回答 / 慕侠3228424
个人认为:read命令后面的变量,属于赋值,所以不需要$()。其它的调用变量的命令,需要$()。

最新回答 / 星光如此灿烂
这样看代码看不到你说的问题,你应该把报错也贴上的。暂时看见有几个问题:-n 与“num1” 中间要有空格。== 两边要有空格[ xxx ]  方括号里的判断要跟两个方括号之间有空格除法那行不要带双引号最后一行只要在两边加双引号就够了,不要写那么多双引号可能还有漏看的。。。下面是我写的拆解过if结构的<...code...>

已采纳回答 / AndreaZha
sum = $(($num1+$num2)),=前后不能有空格吧,得是sum=$(($num1+$num2))

已采纳回答 / 画方为圆
  if ["$ope"=="+"];then  这里的应该这样 if [  "$ope"  ==  "+"  ] ;then明白了吗,2个等号旁边要有空格,2个中括号跟双引号的内容之间也要有空格,目前发现这个问题 

最新回答 / 星光如此灿烂
一个一个判断没必要把if都套起来吧,可以拆开来写,一层层的if强迫症看着难受。

最新回答 / weibo_yu暴走的蜗牛_0
13行先处理为空的话,可能可读性会强一些,34行的else距离太远了,不好看

最新回答 / 追星逐月
不会返回空,sed 's/[0-9]//g'这段代码只是替换数字而已,遇到字母不会替换,所以最后得到的是去掉数字后的字符串

最新回答 / qq_叫我烤饼哥_03505582
还有一个问题,也是第五行,第二个判断条件和第三个判断条件之间少了个 -a

最赞回答 / 千与千寻千般慕
一、 ./if555.sh: line 22: + + + : syntax error: operand expected (error token is "+ ")二、 运算结果:+ + +:就是这里,有一个报错和一个技术难题。一、报错那行的前面已经有if拦截了,怎么还会往下运行的呀?二、第二个提示我知道是我if里的判断写错了,就是不知道如何判断前面有报错时不再显示此运算结果。

最新回答 / 慕无忌5762020
== 两边都要有一个空格 

已采纳回答 / 慕粉2310089285
如果想把文件内的第三行内容黏贴到第十五行:1.进入你的文件,(处于命令模式,而不是编辑模式)2.将你的光标移到你的第三行的开头(用方向键)3,按下v,(你发现切换到可视模式了),按方向键,知道选中你想要的内容4.按y,再将光标移到第十四行末尾。5.按p。完成此方法可以用于多行的粘贴->复制若想剪切->复制的话就更简单了(只能用于单行)1.进入你的文件,(处于命令模式,而不是编辑模式)2.将你的光标移到你的第三行的开头(用方向键)3.按两下d(发现第三行内容不见了)4,再将光标移到第十四行末尾,...
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言