Непонятен вопрос: каков формат текстового файла?
Если такм ТОЛЬКО имена пользователей, которых надо добавить, то достаточно простейшей командной строки:
cat file | xargs -n1 adduser
то же с циклом:
for i in `cat file`; do adduser $1; done
(первый вариант лучше)
если имя пользователя это первое поле в файле с пробелами в качестве разделителя:
cat file | cut -f1 -d' '|xargs -n1 adduser
и так далее...
елки-палки! когда же люди научатся правильно формулировать вопросы??? Мне что, надо клещами информацию тянуть: "подскажите, пожалуйста, чем ещё я могу помочь"?? "Если я Вас не совсем задолбал"???
Простейший вариант, всем пользователям устанавливается единый пароль "ххх".
for i in `cat file`; do echo xxx | passwd --stdin $i; done
Всё. я сдаюсь. я не понимаю, чего человеку нужно и "не работает" для меня слишком неопределенное понятие. Я сильно подозреваю, что человек просто прикалывается и помогать в этом ему больше не намерен.
Можно вот так Желательно бы еще группу, но если не надо, то выкинуть GROUP #!/bin/bash NEW_USERS="users.txt" HOME_BASE="/home/" cat ${NEW_USERS} | \ while read USER PASSWORD GROUP do useradd -g ${GROUP} -p ${PASSWORD} -m -d ${HOME_BASE}${USER} ${USER} done
#!/bin/bash NEW_USERS="users.txt" HOME_BASE="/home/" cat ${NEW_USERS} | \ while read USER PASSWORD GROUP do useradd -g ${GROUP} -p ${PASSWORD} -m -d ${HOME_BASE}${USER} ${USER} done Этот скрипт не работает
И ни кто не прикалывается for i in `cat user.txt`; do echo xxx | passwd --stdin $i; done Этот скрипт не работает Выдает passwd: Only one user name may be specified Пример файла в текстовом режиме user.txt user1^M user2^M ..... vasya ....