Linux 如何识别crontab子作业?

Linux 如何识别crontab子作业?,linux,unix,Linux,Unix,我的unix生产服务器有test.ksh文件,但每天都使用job在日常基础上运行。 我想知道哪个crontab作业正在调用此脚本。我检查了下面的usign命令,但没有找到确切的工作名称 crontab-l --它已被列为100份工作-- 我已经分析了上面提到的100个作业,但我没有得到test.ksh文件 crontab-l | grep“test.ksh” --找不到文件 但是文件在一个目录中可用,我找不到哪个作业叫做test.ksh script 发现: 1.是否是儿童工作如果是,如何识别子

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

  • crontab-l --它已被列为100份工作-- 我已经分析了上面提到的100个作业,但我没有得到test.ksh文件

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

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

    发现:
    1.是否是儿童工作如果是,如何识别子作业?

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

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

    家长

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

    #! /bin/sh
    sleep 60
    
    ps-ef
    显示(删除了许多其他进程)


    pid是进程标识符,因此子进程id为6047。它的ppid-6046-是它的父进程的进程id,您可以在父进程的条目中看到。

    您可以使用
    pstree-pxxxx
    ,其中
    xxxx
    crond
    的pid。然后,您将获得
    crond
    的所有子进程的良好分层概览

    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