script de shell para anexar o ID para o comando newusers

2

Estou no processo de criar 60 usuários localmente em uma máquina Linux. Eu queria fazer isso automaticamente e descobri que posso usar o comando newusers para adicionar os usuários em lote. Eu tenho os usuários e senha listam um arquivo de texto. Atualmente, tenho o arquivo de texto no formato abaixo.

user1:password1
user2:password2
user3:password3

No entanto, para o comando newusers, eu preciso ter o arquivo no seguinte formato.

user1:password1:1011:1000:user1:/home/user1:/bin/bash

Eu preciso modificar o arquivo de texto para anexar o UID, o ID do grupo, o caminho inicial do usuário e o shell do usuário. Existe uma maneira mais fácil do que isso?

    
por Ramesh 28.10.2013 / 18:17

1 resposta

2

Modificar o arquivo é fácil, basta percorrer o arquivo 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

Isso criará um arquivo chamado newusers.txt com o seguinte conteúdo:

user1:password1:1000:1000:/home/user1:/bin/bash
user2:password2:1001:1000:/home/user2:/bin/bash
user3:password3:1002:1000:/home/user3:/bin/bash
    
por 28.10.2013 / 18:43