如何调用这个Perl脚本?

时间:2014-04-16 07:49:26

标签: linux perl

我想在Linux Perl脚本中知道它是从cmd行还是从bash脚本调用的。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

你可以调用linux命令' id'并将输出重定向到日志文件,这样您就会知道是谁调用了脚本。

答案 1 :(得分:0)

您可以使用getppid标识Perl脚本父进程的进程ID。然后,您可以解析ps输出或检查/proc/<parent-pid>虚拟文件系统以识别父级。

<小时/>

更新:对于您的特定问题,如果某个bash脚本调用它,希望Perl脚本执行一些特殊操作,则可能更容易在脚本中设置特殊的环境变量。例如:

# special bash script
export SPECIAL=1
perl my_script.pl



# my_script.pl
...
do_something();
if ($ENV{SPECIAL}) {
    print "Called from the special bash script\n";
    send_email();
} else {
    print "Not called from special bash script\n";
}