shell之路 shell核心语法【第三篇】运算
Bash 支持很多运算符,包括算数运算符、关系运算符、布尔运算符、字符串运算符和文件测试运算符。
原生bash不支持简单的数学运算,默认都是字符串操作,但是可以通过其他命令来实现
算数运算 expr、let、[]、(())
默认
#!/bin/bash a=1 b=$a+2 echo $b

expr
expr 与表达式之间要有空格;运算符左右要有空格
#!/bin/bash a=1 b=`expr $a + 2` echo $b

以下结果都是3
let
($可省略)
#!/bin/bash a=1 let b=a+2 echo $b
[] 推荐
语法简洁
$可省略
#!/bin/bash a=1 b=$[a+2] echo $b
(())
($可省略)
#!/bin/bash a=1 b=$((a+2)) echo $b
关系运算
#!/bin/bash
a=6
if [ $a -lt 10 ];then
echo '使用 -lt'
fi
布尔运算
或 -o &&
与 -a ||
#!/bin/bash a=6 b=30 ########### 符号语法 ########### if [ $a -gt 5 ] && [ $b -gt 20 ];then echo '使用 &&' fi if [ $a -gt 5 ] || [ $b -lt 10 ];then echo '使用 ||' fi ########### 语义语法 ########### if [ $a -gt 5 -a $b -gt 20 ];then echo "使用 -a" fi if [ $a -gt 5 -o $b -lt 10 ];then echo '使用 -o' fi


字符串运算
文件测试运算
文件调用
即一个shell脚本含有执行shell脚本的命令
像其他语言一样,Shell 也可以包含外部脚本,将外部脚本的内容合并到当前脚本。
Shell 中包含脚本可以使用:
. filename
或
source filename
例如,创建两个脚本,一个是/tmp目录下的被调用脚本 subscript.sh,内容如下:
url="http://www.cnblogs.com/hyit/articles/5178316.html"
一个是主文件 main.sh,内容如下:
#!/bin/bash . /tmp/subscript.sh echo $url
参考文章:http://c.biancheng.net/cpp/view/2736.html
谢谢

浙公网安备 33010602011771号