bash脚本中的sudo命令暂停脚本

礼节

我有一台2009年初的iMac传感器出现问题。ODD和CPU风扇全速运行。为了在Ubuntu中将它们降低到最低速度,我需要使用此方法在终端中设置速度我没有在每次启动后执行此操作,而是创建了一个bash脚本来为我执行此操作,但是它不起作用。

这是我的脚本:

#!/bin/bash
echo "Beginning script..."
echo "Logging in as root..."
sudo su
cd /sys/devices/platform/applesmc.768/
echo "Enabling manual override for Fan 1 (ODD fan)..."
echo '1' > fan1_manual
echo "Setting speed of Fan 1 (ODD fan) to 1650 RPM..."
echo '1650' > fan1_output
echo "Enabling manual override for Fan 3 (CPU fan)..."
echo '1' > fan3_manual
echo "Setting speed of Fan 3 (CPU fan) to 1200 RPM..."
echo '1200' > fan3_output
echo "Done."

问题出在“ sudo su”。它提示输入密码,但是输入密码后,什么也没有发生。它只是停止。

这是截图

用户名

您的脚本停止,因为sudo su启动了一个新的Shell进程。您原始的shell进程-运行脚本的进程-等待子shell结束。

我建议使用root特权运行整个脚本,而不是要求从脚本本身以root用户身份登录。sudo su从代码中删除部分,然后运行脚本,如下所示:

$ sudo ./yourscript

这是常见的做法。请注意,像这样的系统管理脚本update-grub不需要输入root密码-只是希望它们以root身份运行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Bash脚本中运行sudo命令

来自分类Dev

忽略bash脚本中的sudo

来自分类Dev

Bash在脚本中退出sudo

来自分类Dev

在Bash脚本中挂起SUDO?

来自分类Dev

以root用户身份运行bash脚本,该脚本中具有sudo命令

来自分类Dev

Bash脚本中的SSH + Sudo + Expect:在远程计算机中使用sudo运行命令

来自分类Dev

Perl脚本中的Bash命令

来自分类Dev

Perl脚本中的Bash命令

来自分类Dev

bash脚本中的增量命令

来自分类Dev

bash脚本中的Tar命令

来自分类Dev

bash脚本中的命令无效

来自分类Dev

使用sudo执行命令并使用sudo执行Bash脚本

来自分类Dev

Python脚本中的Sudo执行命令

来自分类Dev

如何使用bash脚本中的Expect和send命令执行sudo命令?

来自分类Dev

如何在bash脚本中维护sudo?

来自分类Dev

如何在bash脚本中的一系列命令中重用sudo

来自分类Dev

BASH:暂停并恢复子脚本

来自分类Dev

Bash输入而不暂停脚本?

来自分类Dev

Sudo和Bash脚本

来自分类Dev

如何从以sudo启动的bash脚本中执行xfconf-query命令?

来自分类Dev

Ubuntu-“ sudo iptables”命令在终端中有效,在bash脚本中无效

来自分类Dev

如何在带有sudo前缀但基于标志的bash脚本中运行命令?

来自分类Dev

如果我sudo执行一个Bash脚本文件,那么Bash脚本中的所有命令是否也将作为sudo执行?

来自分类Dev

如果我sudo执行一个Bash脚本文件,那么Bash脚本中的所有命令是否也将作为sudo执行?

来自分类Dev

脚本内部的sudo,其中包含需要输入的命令(bash)

来自分类Dev

在脚本中退出bash命令而不退出脚本

来自分类Dev

Bash脚本;x.sh脚本中的别名命令

来自分类Dev

在脚本中退出bash命令而不退出脚本

来自分类Dev

无法在bash脚本中执行shell命令

Related 相关文章

热门标签

归档