linux - shell运算符与表达式

目录

(1)expr表达式

(2)算术运算符

(3)关系运算符

(4)布尔运算符

(5)逻辑运算符

(6)字符串运算符

(7)文件测试运算符


(1)expr表达式

expr 是一款表达式计算工具,使用它能完成表达式的求值操作。

#!/bin/bash val=`expr 2 + 2` echo "两数之和为 : $val"

两点注意:

  • 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2。
  • 完整的表达式要被 ` ` 包含。

 

 

(2)算术运算符

假定变量 a 为 10,变量 b 为 20:

 

注意:条件表达式要放在方括号之间,并且要有空格,例如: [$a==$b] 是错误的,必须写成 [ $a == $b ]。

 

(3)关系运算符

关系运算符只支持数字,不支持字符串,除非字符串的值是数字。

 

 

(4)布尔运算符

下表列出了常用的布尔运算符,假定变量 a 为 10,变量 b 为 20:

 

(5)逻辑运算符

假定变量 a 为 10,变量 b 为 20:

 

 

(6)字符串运算符

下表列出了常用的字符串运算符,假定变量 a 为 "abc",变量 b 为 "efg":

 

(7)文件测试运算符

文件测试运算符用于检测 Unix 文件的各种属性。

 

变量 file 表示文件 /var/www/runoob/test.sh,它的大小为 100 字节,具有 rwx 权限。

#!/bin/bash

# author:菜鸟教程

# url:www.runoob.com

file="/var/www/runoob/test.sh"

if [ -r $file ]

then

echo "文件可读"

else

echo "文件不可读"

fi

if [ -w $file ]

then

echo "文件可写"

else

echo "文件不可写"

fi

if [ -x $file ]

then

echo "文件可执行"

else

echo "文件不可执行"

fi

if [ -f $file ]

then

echo "文件为普通文件"

else

echo "文件为特殊文件"

fi

if [ -d $file ]

then

echo "文件是个目录"

else

echo "文件不是个目录"

fi

if [ -s $file ]

then

echo "文件不为空"

else

echo "文件为空"

fi

if [ -e $file ]

then

echo "文件存在"

else

echo "文件不存在"

fi

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值