数值运算命令
expr 命令
expr expression
expression 是由字符串 以及 运算符所组成的,每一个字符串或说运算符之间必须用空格隔开,
运算符的优先顺序先后排列,可以使用小括号来改变运算的优先级别,将运算结果输出到标准输出设备上;
字符串比较,比较的方式是以两字符串的第一个字符开始,以第二个字符串的最后一个字母结束,如果相同,则输出第二个字符串的字母个数,如果不同则返回0,
* 乘法
/ 除法
% 取余数
+ 加法
- 减法
< 小于
<= 小于等于
= 等于
!= 不等于
>= 大于等于
> 大于
& AND运算
| OR 运算
在表达式中含有 * ( ) 等符号的时候,必须在前面加上\ (进行转义 ),以免被外壳解释成其他意义
在表达式中含有 * ( ) 等符号的时候,必须在前面加上\ (进行转义 ),以免被外壳解释成其他意义
expr 2\* \( 3 + 4 \)
得出结果 14 ;
test 命令 进行测试 ;; [[ ]] // 作用相同;
1) 整数运算符
int1 -eq int2 如果int1 和i n t 2相等,则返回真。
int1 -ge int2 如果int1 大于等于i n t 2,则返回真。
int1 -gt int2 如果int1 大于i n t 2,则返回真。
int1 -le int2 如果i n t 1小于等于i n t 2,则返回真。
int1 -lt int2 如果i n t 1小于i n t 2,则返回真。
int1 -ne int2 如果int1 不等于i n t 2,则返回真。
int1 -eq int2 如果int1 和i n t 2相等,则返回真。
int1 -ge int2 如果int1 大于等于i n t 2,则返回真。
int1 -gt int2 如果int1 大于i n t 2,则返回真。
int1 -le int2 如果i n t 1小于等于i n t 2,则返回真。
int1 -lt int2 如果i n t 1小于i n t 2,则返回真。
int1 -ne int2 如果int1 不等于i n t 2,则返回真。
2) 字符串运算符
str1 = str2 如果str1 和s t r 2相同,则返回真。
str1 != str2 如果str1 和s t r 2不相同,则返回真。
str 如果str 不为空,则返回真。
-n str 如果str 的长度大于零,则返回真。
-z str 如果str 的长度等于零,则返回真。
str1 = str2 如果str1 和s t r 2相同,则返回真。
str1 != str2 如果str1 和s t r 2不相同,则返回真。
str 如果str 不为空,则返回真。
-n str 如果str 的长度大于零,则返回真。
-z str 如果str 的长度等于零,则返回真。
3) 文件运算符
-d filename 如果filename 为目录,则返回真。
-f filename 如果filename 为普通的文件,则返回真。
-r filename 如果filename 可读,则返回真。
-s filename 如果filename 的长度大于零,则返回真。
-w filename 如果filename 可写,则返回真。
-x filename 如果filename 可执行,则返回真
-d filename 如果filename 为目录,则返回真。
-f filename 如果filename 为普通的文件,则返回真。
-r filename 如果filename 可读,则返回真。
-s filename 如果filename 的长度大于零,则返回真。
-w filename 如果filename 可写,则返回真。
-x filename 如果filename 可执行,则返回真
4) 逻辑运算符
! expr 如果expr 为假,则返回真。
! expr 如果expr 为假,则返回真。
expr1 -a expr2 如果expr1 和e x p r 2同时为真,则返回真。
expr1 -o expr2 如果expr1 或 e x p r 2有一个为真,则返回真
expr1 -o expr2 如果expr1 或 e x p r 2有一个为真,则返回真
//
tcsh表达式的运算符也分为整数运算符、字符串运算符、文件运算符和逻辑运算符四种。
1) 整数运算符
int1 <= int2 如果i n t 1小于等于i n t 2,则返回真。
int1 >= int2 如果int1 大于等于i n t 2,则返回真。
int1 < int2 如果i n t 1小于等于i n t 2,则返回真。
int1 > int2 如果int1 大于i n t 2,则返回真。
2) 字符串运算符
str1 == str2 如果str1 和s t r 2相同,则返回真。
str1 != str2 如果str1 和s t r 2不相同,则返回真。
3) 文件运算符
-r file 如果f i l e可读,则返回真。
-w file 如果f i l e可写,则返回真。
-x file 如果f i l e可执行,则返回真。
-e file 如果f i l e存在,则返回真。
-o file 如果当前用户拥有file ,则返回真。
-z file 如果file 长度为零,则返回真。
-f file 如果file 为普通文件,则返回真。
-d file 如果file 为目录,则返回真。
4) 逻辑运算符
exp1 || exp2 如果exp1 为真或exp2 为真,则返回真。
exp1 && exp2 如果exp1 和e x p 2同时为真,则返回真。
! exp 如果exp 为假,则返回真
1) 整数运算符
int1 <= int2 如果i n t 1小于等于i n t 2,则返回真。
int1 >= int2 如果int1 大于等于i n t 2,则返回真。
int1 < int2 如果i n t 1小于等于i n t 2,则返回真。
int1 > int2 如果int1 大于i n t 2,则返回真。
2) 字符串运算符
str1 == str2 如果str1 和s t r 2相同,则返回真。
str1 != str2 如果str1 和s t r 2不相同,则返回真。
3) 文件运算符
-r file 如果f i l e可读,则返回真。
-w file 如果f i l e可写,则返回真。
-x file 如果f i l e可执行,则返回真。
-e file 如果f i l e存在,则返回真。
-o file 如果当前用户拥有file ,则返回真。
-z file 如果file 长度为零,则返回真。
-f file 如果file 为普通文件,则返回真。
-d file 如果file 为目录,则返回真。
4) 逻辑运算符
exp1 || exp2 如果exp1 为真或exp2 为真,则返回真。
exp1 && exp2 如果exp1 和e x p 2同时为真,则返回真。
! exp 如果exp 为假,则返回真
//