1、创建脚本、运行
(1)创建
vi、gedit编写脚本
注:首行 #! /bin/bash 告诉系统此脚本的解释器为/bin/bash
(2)运行
./ shell脚本名
sh shell脚本名
. shell脚本名
2、shell变量
(1)自定义变量
变量名=变量值
注:=两边无空格 获取变量的值:$变量名
(2)参数位置变量
$0、$1、...、$9
shift [n]
位置参数左移n位,不带参数默认左移1位 ==>防止参数大于10个
(3)特殊变量
$#:传递给脚本参数的个数
$*:参数的集合
3、输入、输出
(1)read
read var
(2)echo
echo $var
(3)export
将父脚本中的变量导入到子脚本中
father.script son.script
export var echo var
sh son.script
4、逻辑判断
(1)条件测试
a、test 条件表达式
b、[ 条件表达式 ]
注: [ ] 前后都有空格
(2)比较
a、字符串比较
string1 = string2 #相等,返回真
string1 != string2 #不相等,返回真
-n string #不空,返回真
注: = != 两边均有空格 $str
b、算数比较
expression1 -eq expresssion2 #==
expression1 -ne expresssion2 #!=
expression1 -gt expresssion2 #> greater than
expression1 -ge expresssion2 #>= greater equal
expression1 -lt expresssion2 #< less than
expression1 -le expresssion2 #<= less equal
c、文件测试
-d file #文件夹
-f file #文件
-s file #文件长度>0
-r file #可读
-w file #可写
-x file #可执行
d、逻辑运算
大致与c语言相同
AND:&&
OR:||
eg: if [ .. ] && [ .. ]
5、算数运算
(1) $(())
在括号内进行数学运算,eg: c=$((a+a*b-b)) #num
若:c=num+num,此时c为num + num的字符串
可用于命令窗口、脚本
(2)let
只能用于命令窗口,不能用于脚本
6、控制结构
(1)if


(2)for


(3)while


(4)break、continue
同c语言中的break、continue
网友评论