Linuxシステムでローカルに60人のユーザーを作成しています。私はこれを自動化したかったので、newusersコマンドを使用してユーザーを一括で追加できることを発見しました。ユーザーとパスワードをリストするテキストファイルがあります。現在、次の形式のテキストファイルがあります。
user1:password1
user2:password2
user3:password3
ただし、newusers コマンドでは、次の形式のファイルが必要です。
user1:password1:1011:1000:user1:/home/user1:/bin/bash
ユーザーシェルでUID、グループID、およびユーザーのホームパスを追加するには、テキストファイルを変更する必要があります。これより簡単な方法はありますか?
答え1
ファイルの変更は、username:pass
ファイルを繰り返すのと同じくらい簡単です。
k=1000; while IFS=: read user pass; do
echo "$user:$pass:$k:1000:/home/$user:/bin/bash"; let k++;
done < users.txt > newusers.txt
これにより、次の名前のファイルが生成されますnewusers.txt
。
user1:password1:1000:1000:/home/user1:/bin/bash
user2:password2:1001:1000:/home/user2:/bin/bash
user3:password3:1002:1000:/home/user3:/bin/bash