如何检测进程是否正在 UNIX 中多节点网格中的任何节点上运行

发布于 2024-11-16 18:03:28 字数 299 浏览 2 评论 0原文

我的服务器正在使用 GRID。我们有 3 个节点 [当我启动 autosys 作业时,其中任何一个节点都可以执行我的脚本]

现在我的问题是,如果一项作业已经在运行,我是否试图阻止该作业运行。当我看到脚本在同一节点上执行时,我的代码有效[我的意思是第一个实例和第二个实例]

ps -ead -o %U%p%a| egrep '(ksh|perl)' | grep -v egrep| grep \"perl .*myprocess.pl\"

有一种方法,PS 可以列出 GRID 中所有节点的进程的所有实例。

请帮忙!!

My server is using a GRID. we have 3 nodes [any one of them could execute my script when i kick off the autosys job ]

Now my problem is if am trying to stop a job from running if it is already running. My code works when i see the scripts is executing on the same node [i mean the first instance and the second instance ]

ps -ead -o %U%p%a| egrep '(ksh|perl)' | grep -v egrep| grep \"perl .*myprocess.pl\"

is there a way, PS could list all instances of the processes from all nodes in the GRID.

please help!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一影成城 2024-11-23 18:03:28

您可以在公共位置创建 start.flag 文件。保持以下条件:

如果该标志存在,则该标志将被删除,并且
脚本将被执行。脚本执行完成后
将再次触摸该标志。

如果该标志不存在,脚本将直接退出并表示其
正在运行。

祝你好运:)

You can create a start.flag file in a common location. Keep the below conditions:

if the flag exists, then the flag will be removed and the
script will be executed. After completion of execution, the script
will touch that flag again.

if the flag does not exist, the script will just exit saying that its
running.

Best luck :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文