【问题标题】:How to open a command prompt with Perl?如何用 Perl 打开命令提示符?
【发布时间】:2011-03-27 16:41:38
【问题描述】:

好的,再读一遍。我需要用 perl 打开一个窗口提示符。这是因为我希望多个提示并行运行 perl 脚本,但又不想手动打开它们。所以我想要一个我可以调用的脚本(主机),告诉要打开的命令提示符的数量(客户端),要运行的客户端脚本的路径,甚至在客户端询问时输入输入。所以,主要有两件事:

  1. 如何使用 perl 脚本打开提示

  2. 如何将输入传递给该提示

谢谢! (P.S. 我知道运行调用相同主机脚本的主机脚本会是一个巨大的错误,希望我的老板不会那样做:P)

【问题讨论】:

    标签: windows perl command-prompt


    【解决方案1】:

    可以这么说,这可能不是 Perl 问题,而是 Windows 问题。我怀疑你想要做的是调用“start

    例如:

    my $cmd = "perl -w otherscript.pl";
    my $result = system( "start /LOW $cmd" );
    

    这应该在新窗口中启动所需的命令并立即返回。输入start /? 可以更改新脚本的优先级、隐藏下一个窗口或在当前窗口中运行的其他选项。

    【讨论】:

    • 好吧,这听起来很有希望。现在另一个大问题:如果其中一个脚本死了,我希望提示保持打开状态以显示错误。我查看了选项,但我不确定哪个选项会做到这一点,你碰巧知道吗?另外,我需要提示与脚本位于同一位置,而不仅仅是从当前位置运行它,我应该使用“I”选项吗?
    • 也许你可以说$cmd = "script.exe || cmd.exe";,如果你的脚本失败,它会告诉windows运行CMD.exe。不过可能不是正确的方法。
    【解决方案2】:

    这是一个 DOS/Windows 问题,而不是 Perl 问题。

    使用

    system("start cmd.exe /k $cmd")
    

    参见start /?cmd /?

    【讨论】:

      猜你喜欢
      • 2011-07-29
      • 1970-01-01
      • 1970-01-01
      • 2011-06-08
      • 1970-01-01
      • 2022-08-22
      • 2022-06-20
      • 2021-09-18
      • 1970-01-01
      相关资源
      最近更新 更多