【问题标题】:Can't run bash script with sudo [duplicate]无法使用 sudo 运行 bash 脚本 [重复]
【发布时间】:2015-03-24 05:27:23
【问题描述】:

我创建了一个简单的测试脚本 test.sh。我可以使用./test.sh 运行它,但是当我尝试sudo ./test.sh 时出现错误。

test.sh 的内容:

$ cat test.sh
#!/bin/bash

echo Test worked

echo end

文件权限:

$ ls -l 
-rwxrwxrwx 1 spark spark      40 Jan 25 12:20 test.sh

运行脚本:

$ ./test.sh
Test worked
end

使用 sudo 运行脚本:

$ sudo ./test.sh
sudo: ./test.sh: command not found

为什么会发生这种情况?

【问题讨论】:

  • 这对我有用; bash --version 透露了什么?
  • 哇,一个世界可写的脚本意味着要以root权限执行?你能告诉我在什么系统上我可以找到那个脚本吗?我喜欢它!
  • @NickThompson $ bash --version GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu) ...
  • 听起来像是挂载了 noexec 标志的文件系统。

标签: linux bash shell unix sudo


【解决方案1】:

试试这个:

sudo bash test.sh

【讨论】:

  • 相同的行为。 $ sudo bash test.shbash: test.sh: Permission denied
  • 这不是“相同的行为”。
【解决方案2】:

它可以在没有“sudo”的情况下工作。

bash test.sh

【讨论】:

    猜你喜欢
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    • 1970-01-01
    • 2019-12-23
    • 2012-10-01
    • 2011-08-10
    相关资源
    最近更新 更多