⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bad-op.sh

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 SH
字号:
#!/bin/bash# bad-op.sh: 尝试一下对整数使用字符串比较. echonumber=1# 下面的"while循环"有两个错误: #+ 一个比较明显, 而另一个比较隐蔽. while [ "$number" < 5 ]    # 错! 应该是:  while [ "$number" -lt 5 ]do  echo -n "$number "  let "number += 1"done  #  如果你企图运行这个错误的脚本, 那么就会得到一个错误消息: #+ bad-op.sh: line 10: 5: No such file or directory#  在单中括号结构([ ])中, "<"必须被转义. #+ 即便如此, 比较两个整数还是错误的. echo "---------------------"while [ "$number" \< 5 ]    #  1 2 3 4do                          #  echo -n "$number "        #  看起来*好像可以工作, 但是 . . .  let "number += 1"         #+ 事实上是比较ASCII码, done                        #+ 而不是整数比较. echo; echo "---------------------"# 这么做会产生问题. 比如: lesser=5greater=105if [ "$greater" \< "$lesser" ]then  echo "$greater is less than $lesser"fi                          # 105 is less than 5#  事实上, 在字符串比较中(按照ASCII码的顺序)#+ "105"小于"5". echoexit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -