溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux系統(tǒng)中vim文本編輯器的使用

發(fā)布時間:2020-05-27 14:50:10 來源:億速云 閱讀:204 作者:鴿子 欄目:系統(tǒng)運維

一 知識點  紅帽考試原題: 在腳本中使用read命令讀取用戶輸入的密碼值,然后賦值給PASSWD變量,并通過-p參數(shù)向用戶顯示一段提示信息,告訴用戶正在輸入的內(nèi)容即將作為賬戶密碼。在執(zhí)行該腳本后,會自動使用從列表文件users.txt中獲取到所有的用戶名稱,然后逐一使用“id 用戶名”命令查看用戶的信息,并使用$?判斷這條命令是否執(zhí)行成功,也就是判斷該用戶是否已經(jīng)存在。

需要多說一句,/dev/null是一個被稱作Linux黑洞的文件,把輸出信息重定向到這個文件等同于刪除數(shù)據(jù)(類似于沒有回收功能的垃圾箱),可以讓用戶的屏幕窗口保持簡潔。

[root@linuxprobe ~]# vim Example.sh
#!/bin/bash
read -p "Enter The Users Password : " PASSWD
for UNAME in `cat users.txt`
do
id $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "Already exists"
else
useradd $UNAME &> /dev/null
echo "$PASSWD" | passwd --stdin $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "$UNAME , Create success"
else
echo "$UNAME , Create failure"
fi
fi
done

執(zhí)行批量創(chuàng)建用戶的Shell腳本Example.sh,在輸入為賬戶設(shè)定的密碼后將由腳本自動檢查并創(chuàng)建這些賬戶。由于已經(jīng)將多余的信息通過輸出重定向符轉(zhuǎn)移到了/dev/null黑洞文件中,因此在正常情況下屏幕窗口除了“用戶賬戶創(chuàng)建成功”(Create success)的提示后不會有其他內(nèi)容。

在Linux系統(tǒng)中,/etc/passwd是用來保存用戶賬戶信息的文件。如果想確認這個腳本是否成功創(chuàng)建了用戶賬戶,可以打開這個文件,看其中是否有這些新創(chuàng)建的用戶信息。

[root@linuxprobe ~]# bash Example.sh
Enter The Users Password : linuxprobe
andy , Create success
barry , Create success
carl , Create success
duke , Create success
eric , Create success
george , Create success
[root@linuxprobe ~]# tail -6 /etc/passwd
andy:x:1001:1001::/home/andy:/bin/bash
barry:x:1002:1002::/home/barry:/bin/bash
carl:x:1003:1003::/home/carl:/bin/bash
duke:x:1004:1004::/home/duke:/bin/bash
eric:x:1005:1005::/home/eric:/bin/bash
george:x:1006:1006::/home/george:/bin/bash

讓腳本從主機列表文件ipadds.txt中自動讀取IP地址(用來表示主機)并將其賦值給HLIST變量,從而通過判斷ping命令執(zhí)行后的返回值來逐個測試主機是否在線。腳本中出現(xiàn)的$(命令)是一種完全類似于第3章的轉(zhuǎn)義字符中反引號命令的Shell操作符,效果同樣是執(zhí)行括號或雙引號括起來的字符串中的命令。大家在編寫腳本時,多學(xué)習(xí)幾種類似的新方法,可在工作中大顯身手:

[root@linuxprobe ~]# vim CheckHosts.sh
#!/bin/bash
HLIST=$(cat ~/ipadds.txt)
for IP in $HLIST
do
ping -c 3 -i 0.2 -W 3 $IP &> /dev/null
if [ $? -eq 0 ] ; then
echo "Host $IP is On-line."
else
echo "Host $IP is Off-line."
fi
done
[root@linuxprobe ~]# ./CheckHosts.sh
Host 192.168.10.10 is On-line.
Host 192.168.10.11 is Off-line.
Host 192.168.10.12 is Off-line.

二 學(xué)習(xí)體會
三 圖片上傳
Linux系統(tǒng)中vim文本編輯器的使用

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI