首页 > 代码库 > linux/centos shell脚本中非交互式修改密码
linux/centos shell脚本中非交互式修改密码
今天在写一个shell脚本的时候发现需要设置用户的密码,而设置密码是交互式的,这样在脚本中显然是不太好的,因此上网查找资料,发现了以下两种非交互式设置密码的方式:
1、使用chpasswd
chpasswd其实是通过用户输入‘用户名:密码‘来更改一组用户的密码,还是一个可以批量修改密码的工具,具体的用法详见chpasswd用法,这里只做简单的介绍
格式:# echo 用户名:密码 | chpasswd
比如想要添加一个doiido的帐号,密码为123456,指令如下
# echo doiido:123456 | chpasswd
2、使用passwd和--stdin组合
passwd默认是要用终端作为标准输入,而--stdin表示可以用任意文件做标准输入,这两个配合可以直接修改密码
格式:# echo ‘密码‘| passwd --stdin 用户名
还是添加一个doiido的帐号,密码为123456,指令如下
# echo ‘123456‘| passwd --stdin doiido
1、使用chpasswd
chpasswd其实是通过用户输入‘用户名:密码‘来更改一组用户的密码,还是一个可以批量修改密码的工具,具体的用法详见chpasswd用法,这里只做简单的介绍
格式:# echo 用户名:密码 | chpasswd
比如想要添加一个doiido的帐号,密码为123456,指令如下
# echo doiido:123456 | chpasswd
2、使用passwd和--stdin组合
passwd默认是要用终端作为标准输入,而--stdin表示可以用任意文件做标准输入,这两个配合可以直接修改密码
格式:# echo ‘密码‘| passwd --stdin 用户名
还是添加一个doiido的帐号,密码为123456,指令如下
# echo ‘123456‘| passwd --stdin doiido
这样就可以实现在非交互模式下修改密码,但是对于某些嵌入式linux这两种方式都不支持,则可以使用export来实现。
linux/centos shell脚本中非交互式修改密码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。