#!/bin/bash # author:king my_array=(a b c ds) echo "第一個元素": ${my_array[0]} echo "第一個元素": ${my_array[1]} echo "第一個元素": ${my_array[2]} echo "第一個元素": ${my_array[3]} echo "數組的元素": ${my_array[*]} echo "數組的元素個數是": ${#my_array[@]} [root@zabbix-c48 scripts]# ./array.sh #./這樣執行shell,是沒空格且加了x權限的 第一個元素: a 第一個元素: b 第一個元素: c 第一個元素: ds 數組的元素: a b c ds 數組的元素個數是: 4 [root@zabbix-c48 scripts]#
#!/bin/bash # author:king a=10 b=20 val=`expr $a + $b` echo "a + b : $val" val=`expr $a - $b` echo "a - b : $val" val=`expr $a \* $b` echo "a * b : $val" val=`expr $b / $a` echo "b / a : $val" val=`expr $b % $a` echo "b % a : $val" if [ $a == $b ] then echo "a 等於 b" fi if [ $a != $b ] then echo "a 不等於 b" fi [root@zabbix-c48 scripts]# chmod +x ajcc.sh [root@zabbix-c48 scripts]# ./ajcc.sh a + b : 30 a - b : -10 a * b : 200 b / a : 2 b % a : 0 a 不等於 b [root@zabbix-c48 scripts]#
#!/bin/bash # author:king a=10 b=20 if [ $a -eq $b ] then echo "$a -eq $b : a 等於 b" else echo "$a -eq $b: a 不等於 b" fi if [ $a -ne $b ] then echo "$a -ne $b: a 不等於 b" else echo "$a -ne $b : a 等於 b" fi if [ $a -gt $b ] then echo "$a -gt $b: a 大於 b" else echo "$a -gt $b: a 不大於 b" fi if [ $a -lt $b ] then echo "$a -lt $b: a 小於 b" else echo "$a -lt $b: a 不小於 b" fi if [ $a -ge $b ] then echo "$a -ge $b: a 大於或等於 b" else echo "$a -ge $b: a 小於 b" fi if [ $a -le $b ] then echo "$a -le $b: a 小於或等於 b" else echo "$a -le $b: a 大於 b" fi [root@zabbix-c48 scripts]# ./gxys.sh 10 -eq 20: a 不等於 b 10 -ne 20: a 不等於 b 10 -gt 20: a 不大於 b 10 -lt 20: a 小於 b 10 -ge 20: a 小於 b 10 -le 20: a 小於或等於 b [root@zabbix-c48 scripts]#
#!/bin/bash # author:king a=10 b=20 if [ $a != $b ] then echo "$a != $b : a 不等於 b" else echo "$a == $b: a 等於 b" fi if [ $a -lt 100 -a $b -gt 15 ] then echo "$a 小於 100 且 $b 大於 15 : 返回 true" else echo "$a 小於 100 且 $b 大於 15 : 返回 false" fi if [ $a -lt 100 -o $b -gt 100 ] then echo "$a 小於 100 或 $b 大於 100 : 返回 true" else echo "$a 小於 100 或 $b 大於 100 : 返回 false" fi if [ $a -lt 5 -o $b -gt 100 ] then echo "$a 小於 5 或 $b 大於 100 : 返回 true" else echo "$a 小於 5 或 $b 大於 100 : 返回 false" fi [root@zabbix-c48 scripts]# ./ber.sh 10 != 20 : a 不等於 b 10 小於 100 且 20 大於 15 : 返回 true 10 小於 100 或 20 大於 100 : 返回 true 10 小於 5 或 20 大於 100 : 返回 false [root@zabbix-c48 scripts]#
#!/bin/bash # author:king a=10 b=20 if [[ $a -lt 100 && $b -gt 100 ]] then echo "返回 true" else echo "返回 false" fi if [[ $a -lt 100 || $b -gt 100 ]] then echo "返回 true" else echo "返回 false" fi [root@zabbix-c48 scripts]# ./lj.sh 返回 false 返回 true [root@zabbix-c48 scripts]#
#!/bin/bash # author:king a="abc" b="efg" if [ $a = $b ] then echo "$a = $b : a 等於 b" else echo "$a = $b: a 不等於 b" fi if [ $a != $b ] then echo "$a != $b : a 不等於 b" else echo "$a != $b: a 等於 b" fi if [ -z $a ] then echo "-z $a : 字符串長度爲 0" else echo "-z $a : 字符串長度不爲 0" fi if [ -n "$a" ] then echo "-n $a : 字符串長度不爲 0" else echo "-n $a : 字符串長度爲 0" fi if [ $a ] then echo "$a : 字符串不爲空" else echo "$a : 字符串爲空" fi [root@zabbix-c48 scripts]# chmod +x str.sh [root@zabbix-c48 scripts]# ./str.sh abc = efg: a 不等於 b abc != efg : a 不等於 b -z abc : 字符串長度不爲 0 -n abc : 字符串長度不爲 0 abc : 字符串不爲空 [root@zabbix-c48 scripts]#
#!/bin/bash # author:king file="/var/log/mysqld.log" 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 [root@zabbix-c48 log]# chmod +x file.sh [root@zabbix-c48 log]# ./file.sh 文件可讀 文件可寫 文件不可執行 文件爲普通文件 文件不是個目錄 文件不爲空 文件存在 [root@zabbix-c48 log]#