1.給定一個用戶,若是其UID爲0,顯示爲管理員,不然爲普通用戶bash
#!/bin/bash read -p "input your name :" -t 30 username #first way userid=`grep "^$username:" /etc/passwd | cut -d: -f3` echo $userid [ $userid -eq 0 ] && echo "you are root" || echo "you are not root" #second way userid2=`id -u "$username"` [ $userid2 -eq 0 ] && echo "you are root..." || echo "you are not root..." |
2.給定一個用戶,若是存在則顯示,不然添加這個用戶,並同時設置密碼爲用戶名
ide
#!/bin/bash read -p "input username:" -t 30 username if id $username &>/dev/null ; then echo "$username is exits" else useradd $username echo "$username" | passwd --stdin $username echo "$username is added success!" fi |
3. 思考與總結spa
關於LINUX BASH的變量類型命令行
A.環境變量進程 對於命令行啓動的SHELL進程有效。input B.本地變量 對本SHELL進程有效。須要注意的是,父SHELL和子SHELL是兩個不一樣的SHELL進程,不會共享本地變量的。table C.位置變量class 形式表現爲$1,$2...變量 D.特殊變量 好比,$? $?對於咱們很是有用,咱們執行了一個命令,其實,有一個命令的執行結果,還有一個命令的執行狀態碼 (能夠理解爲HTTP協議中的HTTP RESPONSE STATUS CODE) 那麼$?將有助於咱們判斷命令是否正確執行。0 表明正確,1-255爲不正確。 |
關於邏輯運算中的短路現象
A && B 實際上,若是A不正確,那麼B不會執行 A || B 若是A不正確,那麼B纔會獲得執行 根據上面的理論,咱們能夠獲得: A && B || C 若是A正確,那麼執行B 若是A不正確,那麼執行C |