Linux 通过 shell 脚本修改密码

交互方式修改密码

1. ssh 远程到主机;

2. 切换到root账号;

[一般都是切换到root进行密码修改,如果普通用户修改自己的密码,要输入原密码,然后新密码要满足复杂度才OK];

3. passwd username

使用passwd username 修改 username 的密码;
使用该命令会有提示,即进入了交互界面,输入密码即可。

使用脚本修改密码

很多时候我们可能需要远程执行服务器上的脚本来修改账号密码,此时就没有办法进行交互了。
此时可以使用如下两种方式修改密码:

方式1:

echo "password" | passwd testuser --stdin > /dev/null 2>&1

方式2:

echo testuser:password|chpasswd

注:

  1. 密码字符串的双引号,可有可无,见上面 方式1 和 方式2 的例子

  2. 如果密码中包含 $ 字符,需要使用反斜线进行转义,如:

echo testuser:password\$|chpasswd

转自https://segmentfault.com/a/1190000003866142 特别感谢他在我职业生涯对我的帮助。
posted @ 2016-03-28 17:21  崔志朋  阅读(7019)  评论(0编辑  收藏  举报