0

我希望能够使用 Perl 脚本更改用户的密码。我试过了:

my $user = "test";
my $pass = "testing";

open(DATA, "| passwd $user") || die "failed";
print DATA $pass;
sleep(1);
print DATA $pass;
close(DATA);

它永远不会通过。

我也试过 `echo -e "$pass\n$pass" | passwd $user" 但是,我收到密码转换失败错误。

任何帮助,将不胜感激

4

1 回答 1

0

我相信,由于您没有换行符,因此它永远不会完全收到新密码。就像您输入了它但从未按回车键一样。

我相信, Expect经常用于这样的提示。

于 2013-01-11T05:55:54.430 回答