创建多个用户账户

创建多个用户账户

Content #

无须为每个需要创建的新用户账户手动输入useradd命令,可以将需要添加的新用户账户放在一个文本文件中,然后创建一个简单的脚本来进行处理。这个文本文件的格式如下:

loginname, name

第一项是为新用户账户所选用的用户id。第二项是用户的全名。两个值之间以逗号分隔。

将IFS分隔符设置成逗号,并将其作为while语句的条件测试部分。然后使用read 命令读取文件中的各行。实现代码如下所示:

while IFS=',' read -r userid name

read命令会自动移往CSV文本文件的下一行,因此就无须专门再写一个循环了。当read命令返回假值的时候(也就是读取完整个文件),while命令就会退出。

要想把数据从文件中传入while命令,只需在while命令尾部使用一个重定向符即可。

$ cat test26
#!/bin/bash
# process new user accounts
input="users.csv"
while IFS=',' read -r loginname name
do
  echo "adding $loginname"
  useradd -c "$name" -m $loginname
done < "$input"
$

$input变量中保存的是数据文件名,该数据文件被作为while命令的数据源。 users.csv文件内容如下:

$ cat users.csv
rich,Richard Blum
christine,Christine Bresnahan
barbara,Barbara Blum
tim,Timothy Bresnahan
$

From #

Linux命令行与shell脚本编程大全