基本语法
Shebang#
变量赋值#
=
号两边不能有空格。
双引号#
可解释变量。
单引号#
不解释变量,只有单引号是特殊字符。
要输出单引号,需要先关闭单引号。
命令替换#
有反单号和 $()
两种用法。
推荐使用 $()
,可读性更好,更多例子如下:
在这里 ls
没有使用 -l
选项,但 count 的值是 4,原因在这。
输出重定向#
标准输出重定向 >
,新建/覆盖文件。
追加输出重定向 >>
。
标准错误重定向 2>
,新建/覆盖文件。
标准输出和错误重定向到不同文件。
标准输出和错误重定向到同一文件。
输入重定向#
常用方式,使用 <
符号。
内联重定向,Inline Input Redirection。
FOO 为自定义标记,用于多行输入。
EXPR 命令#
反人类的数学运算指令,+
号两边的空格不能少。
*
号是通匹符,还得转义。
只有整除,不支持浮点数。
方括号#
可使用 []
执行数学运算。
BC 计算器#
精确数学运算计算器,全称 Basic/Bench Calculator。
交互模式#
-q
选项不打印上面那串英文欢迎语。
浮点数#
可以直接使用浮点数计算。
除法会用到 scale
变量,默认值为 0,表示整除。
表示保留 2 位小数,scale
变量仅对除法有效。
管道方式#
内联输入重定向#
EXIT 命令#
脚本的默认退出码是 0,表示正常退出,可使用 exit
改变。
退出码的范围是 0-255,取模(%256)。