【问题标题】:Get return code from Perl script and hide from process table从 Perl 脚本中获取返回码并从进程表中隐藏
【发布时间】:2014-03-08 16:44:41
【问题描述】:

我有一个调用JAR 文件的脚本:

exec("$java_path/java -jar testjar.jar --username user --password pswd");

system("$java_path/java -jar testjar.jar --username user -password pswd");

我需要从 JAR 文件中返回错误代码。 Exec 在 Linux 上执行此操作,但在 Windows 上不执行此操作。这似乎是 Perl 中的一个错误...我在 Stack Overflow 问题中找到了它Return code using exec is not coming back

我开始使用 exec,但在从 Stack Overflow 问题中得到答案后,我开始使用 ikegami 发布的解决方法。但是,现在我的问题是,当使用 system 时,进程位于进程表中,并显示参数(主要问题是密码)。

我正在寻找一种既可以获取返回码又可以从进程表中隐藏密码的解决方案。

【问题讨论】:

    标签: perl


    【解决方案1】:

    进程只能改变它们自己的参数出现的方式——其他进程的参数是不受限制的。您需要以某种方式将密码传递给您的 Java 应用程序,而不是作为命令行参数。

    【讨论】:

    • 对不起,我不确定我第一次提供的信息是否足够。我不相信这种解决方案会奏效。当我运行系统命令时,Perl 脚本也会一直停留在进程表中。另一个程序正在将密码/用户名参数传递给我的 perl 脚本。我无权访问该程序的代码。所以我被通过命令行传递给我的 perl 脚本的 args 卡住了。
    猜你喜欢
    • 1970-01-01
    • 2015-11-06
    • 1970-01-01
    • 2014-04-10
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    相关资源
    最近更新 更多