首页 > 系统服务 > 详细

shell基础

时间:2017-01-12 16:32:04      阅读:10      评论:0      收藏:0      [点我收藏+]

标签:shell   表达式   常用语   

(())用法(常用语简单的整数计算)

算术运算符号

运算符

意义

  ++    --

增加接减少,可前置也可放在结尾

  +   -   !   ~

一元的正号与负号,非,逻辑与位的取反

  *   /    %

乘法、除法、取余

  +   -

加法、减法

  <   <=   >   >=

比较符号

  ==   !=

相等、不相等

  <<    >>

向左移位、向右移位

  &

位的AND

  ^

位的异或

  |

位的或

  &&

位的AND

  ||

为的OR

  ?:

条件表达式

  =   +=    -=   *=   /=   %=   &=

赋值运算符


常用文件测试操作符号

常用文件操作符号

说明

-f 文件,英文file

文件存在且为普通文件则真,即测试表达式成立

-d文件,英文directory

文件存在且为目录文件则真,即测试表达式成立

-s 文件,英文size

文件存在且文件大小不为0则真,即测试表达式成立

-e 文件,英文exist

文件存在则真,即测试表达式成立。只要有文件就行,区别-f

-r 文件,英文read

文件存在且可读则真,即测试表达式成立。

-w 文件,英文write

文件存在且可写则真,即测试表达式成立。

-x 文件,英文executable

文件存在且可执行则真,即测试表达式成立。

-L 文件,英文link

文件存在且为链接则真,即测试表达式成立。

f1 -nt f2,英文newer than

文件f1比文件f2新则真,即测试表达式成立,根据文件修改时间计算

f1 -ot f2,英文older than

文件f1比文件f2旧则真,即测试表达式成立,根据文件修改时间计算

字符串测试操作符

字符串测试操作符的作用:比较两个字符串是否相同、字符串长度是否为零,字符串是否为NULLBash区分零长度字符串和空字符串。

常用字符串测试操作符

说明

-z "字符串"

若串长度为0则真,-z理解为zero

-n "字符串"

若串长度不为0则真,-n理解为 no zero

"1"="2 "

若串1等于串2则真,可以使用"=="代替"="

""!=""

若串1不等于串2则真,但不能使用"!=="代替"!="

特别注意,以上表格中的字符串测试操作符号务必要用""引起来。[ -z "$string" ]

字符串比较,比较符号两端最好有空格,参考系统脚本。

[  "$password"="john" ][  "$password"="john" ]之间必须存在空格

整数二元比较操作符

[]中使用的比较符

说明

-eq

equal  等于  应用于:整数比较

-ne

not equal  不等于  应用于:整型比较

-gt

greater than  大于  应用于:整型比较

-ge

greater equal  大于或等于  应用于:整型比较

-lt

less than  小于  应用于:整型比较

-le

less equal  大于或等于:整型比较

逻辑操作符

[]中使用的逻辑扣件符

说明

-a

and,两端都为真则真

-o

or,有一个真就真

!

not,相反则为真

小结:
多个[]之间的逻辑扣件符是&&||

       &&前面成功执行后面

       || 前面不成功执行后面


其他

有时用[]if要简单

[[email protected] scripts]# [ -f"$file" ] && echo 1 || echo 0
0
[[email protected] scripts]# if [ -f"$file" ];then echo 1;else echo 0; fi
0


本文出自 “unixzhang” 博客,谢绝转载!

shell基础

标签:shell   表达式   常用语   

原文:http://jazzdaum.blog.51cto.com/6223324/1891280

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号