shell指令碼基礎練習題

2021-08-27 04:14:37 字數 1427 閱讀 1102

1.設計乙個 shell 程式,新增乙個新組為 class1,然後新增屬於這個組的 30 個使用者,使用者名稱的形式為stuxx,其中 xx 從 01 到 30。

在/tmp目錄下新建乙個shell指令碼std.sh

[root@localhost tmp]# vim std.sh

#!/bin/bash

#新增乙個組class1

groupadd class1;

for((i=1;i<=30;i++))

doif [ $i

-lt10 ]

then

username=stu0$

else

username=stu$

fi useradd -g class1 $username

#將密碼設為123且每個使用者都可用

echo

123 | passwd --stdin $username

done

給stud.sh設定許可權,並執行指令碼

[root@localhost tmp]# chmod +x std.sh

[root@localhost tmp]# ./std.sh

執行結果如下:(未顯示完全)

2.編寫 shell 程式,實現自動刪除 30 個賬號的功能。賬號名為 stu1 至 stu30。

前提:得建立30個stu1至stu30的使用者(題1.已建立)。

在/tmp目錄下新建乙個shell指令碼stud.sh

[root@localhost tmp]# vim stud.sh

#!/bin/bash

for((i=1;i<=30;i++))

doif [ $i

-lt10 ]

then

userdel -r stu0$

2>/dev/null

echo

"stu0$ delete successfully"

else

userdel -r stu$

2>/dev/null

echo

"stu$ delete successfully"

fidone

給stud1.sh設定許可權,並執行指令碼

[root@localhost tmp]# chmod +x stud.sh

[root@localhost tmp]# ./stud.sh

執行結果如下:(未顯示完全)

參考題目

shell指令碼練習題

bin bash 寫乙個指令碼 1.設定變數file的值為 etc passwd 2.依次向 etc passwd中的每個使用者問好,並且說出對方的id是多少 形如 hello,root,your uid is 0.file etc passwd count wc l cut f1 d for i ...

shell指令碼練習題

bin bash echo 九九乘法表 注意 之間不能有空格 加減乘除的格式 還有轉義字元 ne for i 1 i 9 i i 1 do for j 1 j i j j 1 do result i j echo ne i j result t done echo done bin bash num...

shell基礎練習題的總結

1 統計 var log下檔案的個數。在 bin bash dir var log count 0 for i in doif e i then count expr count 1 fidone echo count 2 如何將f1.txt檔案的執行結果輸出到f2.txt裡?bin bash ec...