Страница 1 из 1

Регистрация списка пользователей, находящегося в файле

Добавлено: 2012-07-04 12:07:04
fat00raf
Нужно написать процедуру, которая будет регистрировать студентов, перечень которых находится в файле list. Для каждого пользователя в файле указаны: фамилия, инициалы и номер группы. Например, Иванов И.И. MM-102. Каждому пользователю при регистрации присваивается идентификатор, значение которого включает название группы и номер студента в списке группы, который должен быть упорядочен по значению фамилии. Значение пароля должно быть уникальным.
  • Ivanov I.I. MN-101
    Petrov V.I MM-101
    Demin A.O MT-201
    Makagon E.V. MK-301
Список передаю в качестве аргумента процедуры

Код: Выделить всё

if test $# -eq 0
then
    echo Argument missing
    exit
fi
if test -f $1
then
    cat -n $1|sort -t" " +1n -1n -o temp
    var=temp
    awk '{useradd -d /home/$1$4 -g students -m -s /bin/sh $1$4 }' $var
else
    echo file $1 not found
fi
строчка с awk не работает, я не знаю, что делать... Помогите пожалуйста

Re: Регистрация списка пользователей, находящегося в файле

Добавлено: 2012-07-04 13:10:57
kpp
Вопрос в виде объявления? Оригинально.
Вообще говоря непонятно, что вы хотели сделать с бедным awk, и главное за что? :roll:
В вашем случае нужно в цикле пройтись по строкам файла, выполняя useradd.
Схемотично так(если разделитель между полями пробел или табуляция):

Код: Выделить всё

while read FAMILY INITIALS NUMGR
do
 # в FAMILY - фамилия
 # в INITIALS - инициалы
 # в NUMGR номер группы
  useradd ...с нужными параметрами...
done  < list

Re: Регистрация списка пользователей, находящегося в файле

Добавлено: 2012-07-04 13:29:10
fat00raf
Насчет объявления... Чисто случайно получилось))) А за подсказку спасибо большое, попробую сделать.