-
Notifications
You must be signed in to change notification settings - Fork 0
/
2运算符.sh
142 lines (112 loc) · 1.62 KB
/
2运算符.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#!/bin/sh
a=10
b=20
#运算符
val=`expr $a + $b`
echo "a + b = $val"
val=`expr $a - $b`
echo "a - b = $val"
#关系运算符
#等于
if [ $a -eq $b]
then
echo "equal"
else
echo "not equal"
fi
#大于
if [ $a -gt $b ]
then
echo "a 大于 b"
else
echo " a 不大于 b"
fi
:<<EOF
-nq 不等于
-lt 小于等于
-ge 大于等于
-le 小于等于
EOF
a=10
b=20
if [ $a -eq $b ] ; then
printf "%s\n" equal
elif [ $a -gt $b ]; then
printf "%s\n" greate
elif [ $a -lt $b ] ; then
printf "%s\n" less
else
echo -e "other"
fi
#布尔运算符
# -a
if [ $a -lt 11 -a $b -lt 22 ]
then
echo "同时满足 a小于11 并且 b小于22"
fi
if [ $a -ge 5 -o $b -le 5]
then
echo "满足a大于等于5或者b小于等于5"
fi
:<<EOF
= 等于
!= 不等于
-z 长度为0 TRUE
-n 长度不为0 TRUE
$ 是否为空
EOF
a="abc"
b="efgs"
if [ $a = $b ]; then
echo "a=b"
fi
if [ $a != $b]
then
echo "a不等于a"
fi
# 长度是否为0,是否为空
if [ -z $a ]
then
echo "a存在"
else
echo "a 不存在"
fi
# 是否存在
if [ $a ]
then
echo "a exist"
else
echo "a not exist"
fi
a=""
b="abc"
echo $a
echo "$a"
echo -e "is exist"
if [ $a ] ; then
echo -e "a is exist"
else
echo -e "a not exist"
fi
echo -e "is empty"
if [ -z $a ] ; then
echo -e "a is empty"
else
echo -e "a is not empty"
fi
if [ $a = $b ] ; then
echo "a=br"
else
echo "a!=b"
fi
filename="/home/fangxihang/work"
if [ -d $filename ] ; then
echo -e "is dir"
else
echo -e "is no dir"
fi
if [ -x $filename ] ; then
echo -e "exec permissio"
else
echo -e "not exec permission"
fi