【问题标题】:How to simulate opening of .BAT file without one?如何在没有一个的情况下模拟打开.BAT文件?
【发布时间】:2016-12-29 05:37:20
【问题描述】:

我想一个接一个地自动启动几个 Perl 脚本(尽管在技术上是并行的)。

很容易制定一个例程,让脚本生成一个仅包含下一个 Perl 脚本的简单 .BAT 文件,例如:

write_file("Z.bat", "$myfile_nextnumber.pl\n");
system "start Z.bat";

您可以在单独的窗口中从每个脚本中获得不错的输出。

但是如何在不创建任何文件的情况下实现这一点呢?

我得到的最接近的:

system "start cmd /k $myfile_nextnumber.pl";

但在这种情况下,它不会显示执行的路径和文件。

【问题讨论】:

  • start cmd /K title $myfile_nextnumber.pl & $myfile_nextnumber.pl 呢?
  • @aschipfl 如果您使用& 运算符,则必须将cmd 的所有命令括在reference 中提到的双引号中,然后您需要使用单引号将所有命令括起来字符串从start 开始,但是你不能在字符串中传递变量。
  • 你也可以像^&一样转义&...

标签: windows perl batch-file command-prompt


【解决方案1】:

为什么不在每个系统调用之前放一个print 语句?

foreach my $file (@filelist) {
  print "Calling $file\n";
  system "start cmd /k $file";
}

【讨论】:

  • 就我而言,我希望当前的 Perl 脚本调用下一个,但不像有一个主脚本调用其他脚本时那样。这意味着我需要在每个 Perl 脚本的开头添加 print 语句。
猜你喜欢
  • 2012-09-21
  • 2017-07-18
  • 1970-01-01
  • 1970-01-01
  • 2014-08-31
  • 2012-04-07
  • 2022-11-10
  • 1970-01-01
  • 2021-09-08
相关资源
最近更新 更多