真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

學(xué)習(xí)筆記-5.3shell編程2

5.3 shell編程2

成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計、做網(wǎng)站與策劃設(shè)計,陽城網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:陽城等地區(qū)。陽城做網(wǎng)站價格咨詢:18982081108

條件判斷:

   如果用戶不存在

       添加用戶,給密碼并顯示添加成功

   否則

       顯示如果已經(jīng)存在,沒有添加

bash中如何實現(xiàn)條件判斷?

條件測試類型:

    整數(shù)測試

    字符測試

    文件測試

條件測試的表達式:

    [ expressopm ] 前后一定有空格

    ` expressopm `

    test expression

整數(shù)比較:

    -eq:測試兩個整數(shù)是否相等;相等為真0比如 $A -eq $B

    -ne:測試兩個整數(shù)是否不等;不等,為真0,相等,假

    -gt:測試一個數(shù)是否大于另一個數(shù):大于,為真

    -lt:測試一個數(shù)是否小于另一個數(shù)

    -ge:大于或等于

    -le:小于或等于

命令間的邏輯關(guān)系:

   邏輯與: &&

       第一個條件為假時,第二條件不用再判斷,最終結(jié)果已經(jīng)有:

       第一個條件為真時,第二條件必須得判斷

   邏輯或: ||

id user1 &> /dev/null && echo "Hello,student."

如果用戶user6不存在,就添加用戶user6

! id user6 && useradd user6

id user6 || useradd user6

變量名稱:只能包含字母、數(shù)字和下劃線,并且不能以數(shù)字開頭,不應(yīng)該跟

          系統(tǒng)中已有的環(huán)境變量重名

          最好做到見名知義

nano second.sh

#!/bin/bash

LINES = 'wc -l /etc/inittab'

#echo $LINES

FINLINES = 'echo $LINES | cut -d ' ' -f1'

#echo $FINLINES

[ $FINLINES -gt 100 ] && echo "/etc/inittab is a big file." 

 ||  echo "/etc/inittab is a small file." 

如果用戶存在,就顯示用戶已存在;否則,就添加此用戶:

 id user1 && echo "user1 exists." || useradd user1

如果用戶不存在,就添加:否則,顯示其已經(jīng)存在

! id user1 && useradd user1 ||  echo "user1 exists."

如果用戶不存在,添加并且給密碼,否則,顯示其已經(jīng)存在

! id user1 && useradd user1 && echo "user1" | passwd --stdin user1 ||

  echo "user1 exists."

練習(xí),寫一個腳本,完成以下要求:

1 添加3個用戶user1,user2,user3;但要先判斷用戶是否存在,

  不存在而后再添加

2 添加完成后,顯示一共添加了幾個用戶:當(dāng)然,不能包括因為事先

  存在而沒有添加的

3 最后顯示當(dāng)前系統(tǒng)上共有多少個用戶

 nano adduser.sh

#!/bin/bash

! id user1 &> /dev/null && useradd user1 && echo "user1" | passwd 

  --stdin user1 &> /dev/null || echo "user1 exists."

! id user2 &> /dev/null && useradd user2 && echo "user2" | passwd 

  --stdin user2 &> /dev/null || echo "user2 exists."

! id user3 &> /dev/null && useradd user3 && echo "user3" | passwd 

  --stdin user3 &> /dev/null || echo "user3 exists."

USERS = 'wc -l /etc/passwd | cut -d: -f1'

echo "$USERS users."

如果 UID為0:那么

   顯示為管理員

否則

   顯示為普通用戶

NAME = user16

USERID = `id -u $NAME` (~下的反引號) 命令引用表示命令的執(zhí)行結(jié)果

if[ $USERID -eq 0 ];then

  echo "Admin"

else

  echo "common user."

fi

反引號引用表示命令的執(zhí)行結(jié)果

沒有反引號表示命令的執(zhí)行狀態(tài)(是否成功)

if id $NAME;then

練習(xí) 寫一個腳本,完成以下要求:

給定一個用戶:

  1 如果其UID為0,就顯示此為管理員

  2 否則,就顯示其為普通用戶

nano third.sh

#!/bin/bash

#

NAME = user1

USERID =`id -u $NAME`

[ $USERID -eq 0 ] && echo "Admin" || echo "Common user."

條件判斷,控制結(jié)構(gòu):

單分支if語句

if 判斷條件;then (then寫下一行,分號可以省略)

   statement1

   statement2

   ...

fi

雙分支的if語句:

if 判斷條件;then

   statement1

   statement2

   ...

else

   statement3

   statement4 

   ...

fi

nano tt.sh

#!/bin/bash

#

NAME = user1

if id $NAME &> /dev/null;then

   echo "$NAME EXISTS."

else

   useradd $NAME

   echo $NAME | passwd --stdin  $NAME &> /dev/null

   echo "Add $NAME finished."

fi

練習(xí):寫一個腳本,完成以下任務(wù)

1 使用一個變量保存一個用戶名

2 刪除此變量中的用戶,且一并刪除其家目錄

3 顯示“用戶刪除完成”類的信息


網(wǎng)站欄目:學(xué)習(xí)筆記-5.3shell編程2
鏈接URL:http://weahome.cn/article/jjohce.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部