bash本身不支持运算符运算
使用expr命令运算
例如:
result=`expr 2 + 2`
运算符左右要有空格
相等
==
不等
!=
比大小关系运算符(只针对数字)
-eq 判断两个数字是否相等
-ne 不相等
-gt 大于
-lt 小于
-ge 大于或者等于
-le 小于或者等于
-o 或运算
-a 与运算
字符串运算符
= 相等
!= 不等
-z 字符串长度是否为0,为0返回true
-n 字符串长度是否为0,不为0返回true
字符串本身 检查字符串是否为空,不为空返回true
文件运算符
-b file 检查文件是否是快设备(优盘,光盘)文件,是返回true
-d file 检查文件是否为目录,是返回true
-f file 检查文件是否为普通文件(不是设备,不是目录),是返回true
-r file 检查文件是否可读,是返回true
-w file 检查文件是否可写,是返回true
-x file 检查文件是否可执行,是返回true
-s file 检查文件内容是否为空,是返回true
-e file 检查文件或目录是否存在,是返回true
例子:检查文件是否存在,不存在就创建
#!/bin/bash
read -p "please input filename:" filename
if [ -e $filename ]
then
echo 'file exist'
else
echo 'file not exist'
touch $filename
fi