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
demo

字符串运算

文件测试运算

 

文件调用

即一个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

 

posted @ 2016-02-02 22:50  沐风先生  阅读(339)  评论(0)    收藏  举报