从csv文件创建用户的bash脚本

dnph8jn4  于 2022-12-15  发布在  其他
关注(0)|答案(1)|浏览(134)

大家好,我必须做一个bash脚本谁使用户从csv.所以我这样做了,但没有工作,当我启动它,他使我只有一次用户从csv文件和它的错误名称的csv文件:

Id,Prenom,Nom,Mdp,Rôle
1001,Octavia,Blake,U9nh4W,User
1002,Bellamy,Blake,2Nn2Ja,Admin
1003,Abigail ,Griffin,v8G2Zc,User
1004,Finn,Collins,N98rqT,User
1005,Jasper,Jordan,8Ltk4R,User
1006,Raven,Reyes,n45RQz,Admin
1007,Monty ,Green,Y3yzP4,User
1008,Clarke,Griffin,f56SxP,Admin
1009,Marcus,Jane,bNw4T9,User
1010,John ,Murphy,zT5fH2,User
1011,Wells,Jaha,z4b5RJ,User
1012,Maddy ,Griffin,9jqW9F,Admin

这就是我从stackoverflow中提取并编辑的代码:

#!/usr/bin/bash

Ajua_input="/home/sofiane/Téléchargements/Shell_Userlist.csv"
declare -a Id
declare -a Prenom
declare -a Nom
declare -a Mdp
declare -a Role

while IFS=, read -r Id Prenom Nom Mdp Role;
do 
        Id+=("$Id")
        Prenom+=("$Prenom")
        Nom+=("$Nom")
        Mdp+=("$Mdp")
        Role+=("$Role")

done<$Ajua_input

for index in "${!username[@]}";
do
        sudo groupadd "${role[$index]}";
        sudo useradd -g "${role[$index]}" \ 
                     -d "/home/${username[index]}" \
                     -s "/bin/bash" \
                     -p "$(echo "${pass[$index]}" | openssh passwd -1 -stdin)" "${username[$index]}"
done
7xzttuei

7xzttuei1#

我解决了谢谢

#!/bin/bash
export IFS=","

cat /home/sofiane/Téléchargements/Shell_Userlist.csv | while read Id Prenom Nom Mdp Role
    do
    sudo userdel $Prenom-$Nom
    sudo groupdel $Prenom-$Nom
    sudo useradd $Prenom-$Nom
        echo "$Prenom-$Nom:$Mdp" | sudo chpasswd
        sudo usermod -u $Id "$Prenom-$Nom"
                if [ $Role = "Admin" ]
                then
                sudo usermod -aG sudo "$Prenom-$Nom"
                fi
        done

相关问题