Массовое создание аккаунта из текстового файла - PullRequest
3 голосов
/ 18 ноября 2011

У меня есть следующий скрипт, он читает из users.txt первое и второе поля и использует их для генерации имени пользователя и пароля и создает учетные записи для каждой строки.проблема в том, что скрипт создает учетные записи только для первых 2 строк, а не для остальных

enter image description here

#!/bin/bash
FILE=/home/knoppix/users.txt
USERSH=/bin/bash


while IFS=":" read GECOS USRGRP ; do

groupadd -f $USRGRP



USERNM="u$(cat /dev/urandom| tr -dc '0-9' | fold -w 6| head -n 1)"
USERPW=$(cat /dev/urandom| tr -dc 'a-zA-Z0-9' | fold -w 6| head -n 1)


useradd $USERNM -p $USERPW -g $USRGRP -c "$GECOS,$USRGRP" -d $HOME/$USERNM -s $USERSH -m

ACCNT=$(grep $USRNM /etc/passwd)
echo "${tgrn}Account creation successful!${tr}"
echo "$ACCNT"
echo "Credentials"
echo "${tred}Username:${tr} $USERNM ${tred}Password:${tr} $USERPW"
echo
done < $FILE

Ответы [ 2 ]

3 голосов
/ 18 ноября 2011
#!/bin/bash

while IFS=: read GECOS USRGRP; do

    # your groupadd and useradd commands here

done < /home/knoppix/users.txt
0 голосов
/ 18 ноября 2011
#!/bin/bash
for line in $file; do
# make the account

done
rm $file
touch $file
...