sudo 命令以及如何自动获取密码

use*_*988 4 sudo

我遇到了一个问题:

我有一个文件 .sh

    #!/bin/bash 

var=$(zenity --forms --title="T?t gi? v? yêu nhé" \
    --text="V? mu?n t?t máy sau bao nhiêu phút n?a" \
    --separator="," \
    --add-entry="V? ?i?n s? vào ?ây")
case $? in
    0)  sudo shutdown -h $var           
    ;;
    1)
        exit 0;;
    -1)
        echo "An unexpected error has occurred."
    ;;
esac
Run Code Online (Sandbox Code Playgroud)

sudo 命令如何从 echo 命令或文件自动填充密码。我读过 sudo -S 选项,但我不知道它是如何工作的。任何人都可以举一个例子!谢谢你们

ob2*_*ob2 6

最好更改 sudo 规则而不是将明文密码存储在文本文件中:

创建一个新文件/etc/sudoers.d/script_rights并推送

%user ALL = NOPASSWD:/sbin/shutdown
Run Code Online (Sandbox Code Playgroud)

其中 user 是允许运行 script.sh 的用户。然后脚本不会询问密码来运行关机命令。