从 sudo 的联机帮助页:
-S, --stdin
将提示写入标准错误并从标准输入读取密码,而不是使用终端设备。密码后必须跟一个换行符。
使用sudo -S而不仅仅是的目的是什么sudo?
sudo默认情况下从标准输入读取密码是否正确?
“将提示写入标准错误”的目的是什么?sudo默认情况下是否将其写入标准输出?
他们是否都要求密码后面必须跟一个换行符?
例如,在/sf/answers/2768715701/ 中,sudo -S true仍然需要输入密码,那么它如何解决该帖子中的原始问题?当我搜索解决方案时,我找到了该链接是否应该在某些 shell 配置文件中运行需要 sudo 的脚本?
谢谢。
更新:
J.Taylor 的回复说
sudo默认情况下不从 stdin 读取密码 - 它从终端界面读取。
我想知道如何在实现方面理解它。
当程序从标准输入读取时,它从标准输入始终绑定到的文件描述符 0 读取是否正确?
为什么sudo在使用sudowithout时无法判断是使用标准输入还是终端-S?
程序(如sudo -S)如何实现从终端读取而不是从标准输入读取?
| 归档时间: |
|
| 查看次数: |
4339 次 |
| 最近记录: |