ฉันทำโค้ดใหม่อีกครั้งเพื่อให้ซับซ้อนน้อยลง และตอนนี้มันบอกว่า:
ubuntu@ubuntu-VirtualBox:~$ ./newuseradd.sh Newbies.csv
[sudo] รหัสผ่านสำหรับอูบุนตู:
useradd: ไม่มีกลุ่ม 'บัญชี'
useradd: ไม่มีกลุ่ม 'hr'
useradd: ไม่มีกลุ่ม 'ซื้อ'
สคริปต์:
#!/bin/bash
ถ้า [ $# -ne 1 ]; แล้ว
echo "การใช้งาน: $0 ไฟล์"
ทางออก 7
ไฟ
sed -i'.bak' 's/Accounting/acct/;s/Purchasing/purch/;s/Human Resources/hr/;s/Information Technology/it/' $1 # ตอนที่ 3 - การเปลี่ยนชื่อกลุ่ม
ขณะอ่านบรรทัด ทำ
userinfo=($(echo $line | tr ',' ' '))
firstinitial=$(echo "${userinfo[1]}" | ตัด -c1)
username=$(echo ${firstinitial}${userinfo[0]} | tr A-Z a-z)
echo useradd $ชื่อผู้ใช้ -g ${userinfo[2]} -G พนักงาน -c ${userinfo[3]} -m #ตอนที่ 2
echo "$(วันที่): $username, ${userinfo[1]}, ${userinfo[0]}, $?" >> it-log.txt # ส่วนที่ 4 การมอบหมาย - มันเข้าสู่ระบบ
echo -n "${userinfo[0]}, ${userinfo[1]}" >> hr-log.txt
grep "ชื่อผู้ใช้ $" /etc/passwd | ตัด -d':' -f1,7,3 | tr ':' ',' >> hr-log.txt
เสร็จ < $1 #งานส่วนที่ 1
มอบหมายพร้อมรายละเอียด