我希望这个命令安静地运行,
echo "any_password" | sudo -S true
我尝试将 stdout 和 stderr 的输出重定向到/dev/null
。当我提供正确的密码时,它可以按预期工作,但是当密码不正确时,我仍然会在屏幕上看到一些错误。
echo "incorrect_password" | sudo -S true > /dev/null 2>&1
给出,
Sorry, try again.
输出仅被部分抑制。有没有办法完全抑制它?
答案1
这应该可以解决问题
script -qec "echo foo | sudo -S ls > /dev/null 2>/dev/null " > /dev/null
请记住,如果您希望将密码作为参数传递给脚本,或将其存储在脚本文件中,则存在安全问题。