具有本地重定向的本地脚本的远程sudo

时间:2014-04-16 13:21:57

标签: linux bash shell redirect sudo

好吧我确定以前曾经问过这个问题,但我的生活中找不到答案(这是不可能的/怎么做)。

我有一个shell脚本script.sh,它使用以下命令在远程服务器上运行命令:

    ssh -t [SERVER] "[COMMAND TO BE EXECUTED REMOTELY]"

这样可以正常工作,包括命令是否包含sudo。

但是,有时我会重定向此script.sh的输出,当然如果远程命令包含sudo,也会重定向sudo密码提示。

有办法:

    ./script.sh > script.out

仍然在终端上获得远程sudo密码提示?

在cli上为script.sh传递sudo密码不是一种选择。

非常感谢,

麦金太尔。

1 个答案:

答案 0 :(得分:0)

您可以使用tee复制标准输入:

./script.sh | tee script.out

之后,您可以使用awk命令过滤输出内容

./script.sh | tee script.out | awk '/^Password/ {print;}'