awk -F, 'BEGIN { OFS=FS } { print $1, $3 }' userlist.txt |
while IFS=, read username realname; do
useradd -c "$realname" "$username"
done
O awk acima selecionará a primeira e a terceira coluna do arquivo fornecido e criará uma lista de nome de usuário separada por vírgula, seguida de um nome real.
A saída separada por vírgulas de awk é lida, dividida em vírgulas e armazenada nas variáveis do shell username e realname e useradd é invocada.
Geralmente, quando alguém cria um usuário, pode-se querer adicionar um diretório inicial para ele ao mesmo tempo. Faça isso adicionando -m à invocação de useradd . Se os usuários fizerem parte de um grupo específico ou tiverem grupos secundários, use -g e -G com outras informações contidas nos dados de entrada.