title: bash script create users using csv
body: <p>I'm trying to create different users from a csv file in bash.
  This my code so far:</p>
  
  <pre><code>  #create arrays usernames and password 
    groups=(`cut -d: -f 1 "$filein"`) 
    usernames=(`cut -d: -f 3  "$filein" | tr [A-Z] [a-z] |awk '{print substr($1.$2}'`) 
    password=(`cut -d: -f 4 "$filein"`) 
    #creates the user accounts, adds them to groups, and sets passwords 
    #then once account is created 
    #checks if the group exists, if not then creates it 
    for group in ${groups[*]} 
    do 
    grep -q "^$group" /etc/group ; let x=$? 
    if [ $x -eq 1 ] 
    then 
    groupadd "$group" 
    fi 
    done 
    #creates the user accounts, adds them to groups, and sets passwords 
    #then once account is created 
    x=0 
    created=0 
    for user in ${usernames[*]} 
    do 
    useradd -n -c ${usernames[$x]} -g "${groups[$x]}" $user 2&gt; /dev/null 
    chpasswd  "$user" &gt; /dev/null 
    if [ $? -eq 0 ] 
    then 
    let created=$created+1 
    fi
  </code></pre>
  
  <p>For some reason, when I run the file, this is the error I get, even went let me add any users 
  groupadd: 'Q123456,Bob,Bob,QwertY1' is not a valid group name 
  groupadd: 'Q236578,Jane,Jane,AzertY2' is not a valid group name 
  Any help will be appreciated. Thank you </p>