我尝试使用 设置密码,echo "user:SOME_PASSWORD_STRING" | sudo chpasswd -e
但当我这样做时,我的密码没有设置为正确的密码。我使用的密码是我从 复制的/etc/shadow
。
答案1
问题在于 echo 语句中使用了双引号。密码$
中包含多个字符,这些字符被转换为 bash 变量。
正确的命令使用单引号:
echo 'user:SOME_PASSWORD_STRING' | sudo chpasswd -e
有关更多引文,请参见此处:命令行上双引号“”、单引号‘’和反引号‘’之间的区别?