Node.js命令行/批处理中如何更改Linux用户密码浅析

前言

本文主要介绍了Node.js命令行/批处理更改Linux用户密码的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

hpasswd 可在批处理文件中批量更改Linux用户的密码。

用法:

chpasswd [options]

option主要为一些密码加密选项

-c, --crypt-method
Use the specified method to encrypt the passwords.
The available methods are DES, MD5, NONE, and SHA256 or SHA512 if your libc support these methods.
-e, --encrypted
Supplied passwords are in encrypted form.
-h, --help
Display help message and exit.
-m, --md5
Use MD5 encryption instead of DES when the supplied passwords are not encrypted.
-s, --sha-rounds
Use the specified number of rounds to encrypt the passwords.
The value 0 means that the system will choos

输入命令后,按 username:password 格式输入用户名密码,一行一个,如:

chpasswd
newghost:4567

用这种方法可在node.js中使用:

var cp = require('child_process')
//更新密码
var chpasswd = cp.spawn('chpasswd')
var errmsg

//查看是否有错误
chpasswd.stderr.on('data', function (data) {
 errmsg += data.toString()
})
chpasswd.on('exit', function(code) {
 if (cb) {
 errmsg
  ? cb(new Error(errmsg))
  : cb()
 }
})

//写入密码
chpasswd.stdin.write(username + ':' + password)
chpasswd.stdin.end()

总结

相关推荐