小練習: 寫一個腳本
判斷系統上是否有用戶的默認shell 是 bash的
如果有的話就顯示有多少這樣的用戶 否則就顯示無此類用戶
#!/bin/bash
#
grep "bash$" /etc/passwd &> /devnull
CODE=$?
if [ $CODE -eq 0 ]; then
USERNU=`grep "bash$" /etc/passwd | wc -l `
echo "The number of bash shell user is $USERNU" 英語不怎麼樣不知道對不對呵呵
else
echo "The system is not user of bash shell." 英語不怎麼樣不知道對不對呵呵
fi
腳本執行結果
[root@localhost ~]# ./first.sh
The number of bash shell user is 8
練習二:
查看系統是否有用戶的默認的shell是bash
有就顯示其中一個,沒有則顯示系統上沒有。
腳本寫法,和上個腳本相似
#!/bin/bash
#
grep "bash$" /etc/passwd &> /devnull
CODE=$?
if [ $CODE -eq 0 ]; then
USERNU=`grep "bash$" /etc/passwd | head -n1 | cut -d: -f1 `
echo "$USERNU is one of bash shell users."
else
echo "The system is not user of bash shell."
fi
腳本執行結果:
[root@localhost ~]#
[root@localhost ~]# ./first.sh
root is one of bash shell users.
[root@localhost ~]#
如何在shell中進行算術運算(注:默認shell會把變量當成字符不可進行算術運算)
例:
[root@localhost ~]# A=3
[root@localhost ~]# B=6
[root@localhost ~]# C=$A+$B
[root@localhost ~]# echo $C
3+6
[root@localhost ~]#
如果想讓其做算術運算則:
第一種方式: 使用 let 加要進行運算的變量
例:
[root@localhost ~]# A=3
[root@localhost ~]# B=6
[root@localhost ~]# let C=$A+$B
[root@localhost ~]# echo $C
9
[root@localhost ~]#
第二種方式: 使用 $[算術表達式]
例:
[root@localhost ~]# A=25
[root@localhost ~]# B=88
[root@localhost ~]# C=$[$A+$B]
[root@localhost ~]# echo $C
113
[root@localhost ~]#
第三種方式:使用 $((算術表達式))
例:
[root@localhost ~]# A=222
[root@localhost ~]# B=381
[root@localhost ~]# C=$(($A+$B))
[root@localhost ~]# echo $C
603
[root@localhost ~]#
第四種方式: 使用 expr 算術表達式 注意:表達式中各操作數之間要有空格,而且要使用命令引用
例:
[root@localhost ~]# A=3244
[root@localhost ~]# B=38234
[root@localhost ~]# C=`expr $A + $B` 注意要用空格隔開哈
[root@localhost ~]# echo $C
41478
[root@localhost ~]#