1、shell编程有三个步骤
a、建立并编辑shell命令 touch file.sh
b、赋予执行权限 chmod 777 file.sh
c、执行shell程序 sh file.sh
下面是我自己写的创建shell脚本的脚本文件,感兴趣的可以尝试一下:
1、shell脚本中不变量不需要定义,可以直接使用
2、shell自定义变量的时候,赋值号两边不要有空格 例如:var=8
3、位置变量
$0 键入命令行名字
$1~$9 参数1到参数9
$#和$@ 都代表命令行参数个数
$* 包含说有命令函参数
$? 前一个命令的退出状态 0、1
$$ 正在执行的进程
| |
4、shell环境变量
HOME 当前登录用户主目录
IFS 默认为空格,tab和换行(同时执行)
PATH shell搜索路径
PS1,PS2 默认提示符($)及换行提示符(>)
TERM 终端类型
| |
5、read var 从终端读取值并赋值给var
6、expr 算术运算
7、shell编程
自定义变量在赋值号两边不可加空格 name=7
-eq
-ne
-gt 是否大于
-ge 是否大于等于
-lt 是否小于
-le 是否小于等于
| |
-d f1 否为目录
-e f1 是否存在
-f f1 是否为普通文件
-L f1 是否为链接
-s f1 是否存在并且长度不为0
f1 -nt f2 f1比f2新
f1 -ot f2
-r
-w
-x
| |
s1 = s2
s1 != s2
-z s1 s1长度是否为0
-n s1 s1长度是否不为0
| |
8
、
test
比较命令
或
[
比较命令
]
|
-d f1 否为目录
-e f1 是否存在
-f f1 是否为普通文件
-L f1 是否为链接
-s f1 是否存在并且长度不为0
f1 -nt f2 f1比f2新
f1 -ot f2
-r
-w
-x
| |
s1 = s2
s1 != s2
-z s1 s1长度是否为0
-n s1 s1长度是否不为0
| |
|
-eq
-ne
-gt 是否大于
-ge 是否大于等于
-lt 是否小于
-le 是否小于等于
| |
4、shell环境变量
HOME 当前登录用户主目录
IFS 默认为空格,tab和换行(同时执行)
PATH shell搜索路径
PS1,PS2 默认提示符($)及换行提示符(>)
TERM 终端类型
| |