linux - 从 csv 文件在 bash shell 中创建多个用户
问题描述
我正在尝试从 bash shell 脚本中的 csv 文件创建多个用户。我的 csv 看起来像这样
Codigo,Apellido,Nombre,Carrera,Facultad,Rol
10001,Accorti,Paolo,COM,FACED,Profesor
10002,Afonso,Pedro,ICI,FIA,Estudiante
.
.
.
我有以下代码
#!/bin/bash
while IFS=, read -r Codigo Apellido Nombre Carrera Facultad Rol;
do
password="Pass123"
sudo useradd -c "${Codigo} ${Apellido}" -d "/home/$codigo" -s /bin/bash -p "${password}"
done < Usuarios.csv
当我运行代码时,我没有任何错误,但我的终端显示了 useradd 选项并且我的帐户尚未创建。这是我第一次在 bash shell 中编程,我不确定我做错了什么。
解决方案
取自 useradd 的手册页:
-p, --password PASSWORD
The encrypted password, as returned by crypt(3). The default is to
disable the password.
Note: This option is not recommended because the password (or
encrypted password) will be visible by users listing the processes.
You should make sure the password respects the system's password
policy.
使用 -p 传递的密码需要加密,不能是纯文本。另一种方法是使用 passwd
另一种可能性是用户 newusers,尽管这是特定于发行版的。
推荐阅读
- php - 多个查询 mysqli
- java - 如何将 String("dog") 拆分为 Arraylist ['d', 'o', 'g']?
- java - 在 Pentaho 数据集成中打开任何 Kettle 转换文件时出错
- java - 无法成功链接 OpenGL 程序
- class - Kotlin 类中“this”的目的
- android - 从回收者视图适配器中获取价值到活动
- html - 尝试使用 CSS 在其他图像上添加图像
- firebase - 如何获取流
来自嵌套集合 Flutter/Firebase - java - Android使用自定义构造函数重新创建片段
- c++ - 数组为此归并排序函数提供了正确的输出,但向量给出了不正确的输出。出了什么问题?