功能要求:1、建立新使用者,通常是在/home下以使用者名稱名稱的子目錄
2、在/etc/passwd 檔案中添加新使用者的記錄。
3、在/etc/shadow 檔案中添加新使用者的記錄。
代碼實現:
用到while、chown、chgrp等語句。
#!/bin/bash //定義指令碼執行環境
# filename:建立檔案 //定義檔案名稱
i=1 //定義變數
awk `BEGIN { FS=":"; } { print $3 ;}` /etc/passwd >pa //表示將passwd 檔案中以冒號分隔字元的底三列儲存到pa 檔案中,其中“BEGIN”表示從/etc/passwd 檔案每行的首字元開始處理,該行代碼實質是將檔案/etc/passwd 中第三行提取出來儲存到檔案pa 中。
x='tail -1 pa ' //將檔案pa倒數第一行內容儲存到變數x 中,即變數x儲存了當前最大的使用者id.其中“·tail -l pa `"用反引號。
x=$(($x+1)) //將變數的x 值加1,作為下一組建立使用者的id .
while [ $i -le 50 ] //迴圈結構小於50執行,大於50 結束迴圈體。
do //迴圈語句中的結構。
mkdir -p /home/stud${i} //使用mkdir 命令建立使用者的主目錄,
chown -R $stud${i} /home/$stud${i} //使用chown 指定主目錄,
chgrp -R user1 /home/$stud${i} //使用chgrp 指定主目錄
echo "stud${i}:x:${x}:100::/home/stud${i}:/bin/bash" >> /etc/passwd //將這個字串追加到/etc/passwd 尾部
echo "stud${i}::14098:0:9999:7:::::" >> /etc/shadow //將字串附加到檔案尾部
i=$(($i+1)) //變數加1
x=$(($x+1)) //將變數x值加1
done //表示迴圈體結束
本文出自 “快樂至上” 部落格