【问题标题】:How to set sudo in current shell mid-script without leaving current shell?如何在不离开当前 shell 的情况下在当前 shell 中间脚本中设置 sudo?
【发布时间】:2018-01-10 16:28:51
【问题描述】:

我想在这个 bash 函数中间脚本中启用 sudo。我认为问题在于sudo -s 打开了一个新的shell,并且所有后续行都没有打印,因为shell 已退出。

function example {
    echo "one"
    sudo -s
    echo "two"
    echo "three"
}

我怎样才能让twothree 也打印为 sudo?没有在每个之前添加sudo

【问题讨论】:

标签: linux bash shell unix sudo


【解决方案1】:

双重功能呢?有帮助吗?

#!/bin/bash 
function test2 {
sudo echo "two"
sudo echo "three"
}
function test {
echo "one"
test2
}
test

【讨论】:

    【解决方案2】:

    在你的脚本 test.sh 中试试这个:

    #!/bin/bash
    testfunc() {
    echo "test";
    sudo sh -c "echo 'haha'";
    echo "hooo";
    }
    testfunc;
    

    然后调用它:

    bash test.sh

    【讨论】:

      猜你喜欢
      • 2013-09-19
      • 1970-01-01
      • 2011-07-15
      • 2021-03-29
      • 2012-04-11
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      • 2013-01-08
      相关资源
      最近更新 更多