使用su-c运行一个命令,完成后退出



我正在尝试使用另一个用户运行命令,使用以下命令:

sudo su - myuser -c "/my/command.sh -Dparam=lorem | sed '/^BUILD SUCCESSFUL$/ q'";

sh文件调用ant脚本。当BUILD SUCCESSFUL出现在文件中时,我需要结束此操作。但是,如果我在myuser中运行这个,它就会工作。如果我通过另一个用户运行它,并使用su-c,它不会在最后退出,我需要按CTRL+c。

我该如何在最后退出?

/my/command.sh包含以下内容:

nohup something.sh > /opt/lastrun.log &
tail -n 0 -f /opt/lastrun.log

我通过将管道sed变成来解决问题

{ sed '/^BUILD SUCCESSFUL$/ q'; pkill -PIPE -xg0 tail; }

相关内容

  • 没有找到相关文章

最新更新