如何识别crontab子工作?

时间:2015-11-25 10:36:50

标签: linux unix

我的unix生产服务器有test.ksh文件,但每天都在使用job运行日常基础知识。 我想知道哪个crontab作业正在调用此脚本。我检查了以下命令,但我找不到确切的工作名称,

  1. crontab -l - 已被列入100个职位 - 我已经分析了上面提到的100个工作,但我没有得到test.ksh文件

  2. crontab -l | grep“test.ksh” - 找不到文件

  3. 但是文件在一个目录中可用,我找不到哪个作业叫做test.ksh脚本。

    查找: 1.这是否是孩子的工作? - 如果是,我如何识别儿童工作?

2 个答案:

答案 0 :(得分:0)

如果是子脚本,请使用ps -ef并使用test.ksh作业的ppid标识调用脚本。

例如,考虑这两个脚本,第一个只调用第二个

<强>父

#! /bin/sh
# Run child process
./child

儿童

#! /bin/sh
sleep 60

ps -ef显示(删除了很​​多其他进程)

UID   PID  PPID   C STIME   TTY           TIME CMD
501  5725  5724   0  8:22pm ttys000    0:00.28 -bash
501  6046  5725   0 11:38am ttys000    0:00.01 /bin/sh ./parent
501  6047  6046   0 11:38am ttys000    0:00.00 /bin/sh ./child
501  6048  6047   0 11:38am ttys000    0:00.00 sleep 60

pid是进程标识符,因此子进程ID为6047.其ppid - 6046 - 是其父进程的进程ID,您可以看到查看父进程的条目。

答案 1 :(得分:0)

您可以使用pstree -p xxxx,其中xxxxcrond的pid。然后,您将获得crond的所有后代流程的良好分层概述。