linux批量修改用户密码

方法一

1
echo "123456" | passwd --stdin root
  • 优点:方便快捷
  • 缺点:如果你输入的指令能被别人通过history或者其他方式捕获,那么这样的方式是很不安全的,更重要的是如果密码同时含有单引号和双引号,那么则无法通过这种方法修改。
  • 说明:
    批量修改linux密码 passwd –stdin user 从标准输入中读取密码,所以用户可以在脚本中使用如 echo NewPasswd | passwd –stdin username 这种方式来批量更改密码 但在其它的一些发行版(如Debian/Suse)所提供的passwd并不支持–stdin这个参数

方法二

1) 首先将用户名密码一起写入一个临时文件.

1
echo "root:123456">/tmp/passwd.txt

2) 使用如下命令对用户口令进行修改:

1
chpasswd < chpass.txt

或者不创建文件

1
echo "root:123456" | chpasswd

3) 可以使用 123456 来登录系统,密码修改完毕.

  • 优点:可以很快速方便的修改多个用户密码
  • 缺点:明文密码写在文件里仍然显得不够安全,但是避免了第一种修改方式不能有特殊字符串密码的情况.