2

我想通过 shell 脚本更改 Unix 用户的密码,但没有提示输入旧密码。

这意味着我想在 shell 脚本本身中提供旧密码和新密码,以便在提示期间它会从脚本文件中读取它。

4

3 回答 3

4

您应该查看chpasswd命令(如果在您的 linux 风格中可用):

echo 'userid:newpasswd' | chpasswd

或者,您可以在单独的行中列出每个帐户的userid:passwd文件。

就是这样。

于 2014-01-02T21:04:53.177 回答
2
echo -e -n "newpasswd\nnewpasswd" | passwd user
于 2020-03-16T11:19:59.717 回答
0

$> echo -e -n "oldpasswd\nnewpasswd\nnewpasswd" | passwd

或者为了让事情变得更简洁,用你的密码写一个文件

oldpassword
newpassword
newpassword

并使用以下命令:$> passwd < file

管道和重定向运算符将标准输入替换为重定向文件的内容,或者管道命令的输出。

于 2012-10-11T10:38:04.390 回答