我正在尝试在 sudo 上使用 -S stdin 参数。
我尝试过这个:
echo 'mypass' | sudo -S cat /etc/shadow
和
echo 'mypass\n' | sudo -S cat /etc/shadow
正如手册页建议添加换行符。
两者都不行。出了什么问题?
答案1
echo
命令不会打印\n
序列中的换行符。请使用printf
。
printf "mypassword\n" | sudo -S cat /etc/shadow
我正在尝试在 sudo 上使用 -S stdin 参数。
我尝试过这个:
echo 'mypass' | sudo -S cat /etc/shadow
和
echo 'mypass\n' | sudo -S cat /etc/shadow
正如手册页建议添加换行符。
两者都不行。出了什么问题?
echo
命令不会打印\n
序列中的换行符。请使用printf
。
printf "mypassword\n" | sudo -S cat /etc/shadow