我在StackOverflow周围以及其他地方都找到了解决该问题的各种答案,但是,提供的答案都没有解决我的问题。
我尝试了echo 018020 | underclock.sh
和sudo visudo
方法。上述所有方法均无效。即使使用michallal ALL = NOPASSWD: /home/michalall/PycharmProjects/Mining/underclock.sh
,我仍然收到以下消息-sudo no tty present and no askpass program specified
:
这是我的代码:
import os
ubu_path = '/home/michalall'
os_path = ubu_path
project_path = os_path + '/PycharmProjects/Mining/'
os.system('chmod +x ' + project_path + 'nvidia_settings')
os.system('cd ' + project_path + 'nvidia_settings/')
os.system('sudo ' + project_path + 'underclock.sh')
os.system('echo 018020 | underclock.sh')
编辑:
当我跑步时:
os.system('underclock.sh')
os.system('echo 018020 | underclock.sh')
os.system('echo 018020 | sudo -S underclock.sh')
我分别得到以下输出:
sh: 1: underclock.sh: not found.
sudo no tty present and no askpass program specified
sudo no tty present and no askpass program specified
答案 0 :(得分:1)
尝试使用echo <password> | sudo -S <cmd>
,以便sudo
可以从标准输入而不是终端设备读取密码。