Dudas con for en bash

Iniciado por gregory90, 26 Abril 2016, 20:07 PM

0 Miembros y 1 Visitante están viendo este tema.

gregory90

Hola,

Estoy creando un script unicamente usando for.

El cual a través de un fichero pasado por ese for, el cual está previamente creado, en el mismo directorio y que está compuesto por: "nombre apellido1 apellido2", y que en el siguiente for recorre el fichero y con cut solo se queda con el "nombre".
Después simplemente crea el usaurio y después crea una password con el mismo nombre que el usuario (chpasswd -m) cifrada en MD5.

for usuario in $(cut -d " " -f 1 usuarios.txt);
do useradd -d /home/$usuario -g users -m -s /bin/bash $usuario;
echo $usuario:$usuario | chpasswd -m;
done


La cuestión en la que me quedé atascado es, como puedo hacer si dos usuarios se llaman igual y a este usuario con el mismo nombre añadirle un "1" al final del nombre, si encuenta otro un "2".
Ejemplo: Marcos, Marcos2, Marcos3, o Marcos, Marcos1, Marcos2.

Este último quería hacerlo con for si fuese posible. Pero tendría que concatenar dos for? como podría inicializar un for e 1 y que vaya recorriendo todo el fichero, para que a los usuarios con el mismo nombre vaya añadiendo un número final??

Gracias,
un saludo.

gregory90

Alguien que me pueda ayudar con esto... gracias.