使用perl打开.exe文件,以下是我的命令
start /wait C:/Software/Patran_x64/20170/bin/patran.exe D:\Application_Integration_Files\Patran\toPreProcessor.ses
此命令打开应用程序但不打开我作为第二个参数提供的输入文件,它将保留命令直到我关闭应用程序。
以下命令使用输入文件打开应用程序,但在关闭应用程序之前,它不会在命令提示符中保留命令。 这是命令
start /wait "C:/Software/Patran_x64/20170/bin/patran.exe" "D:\Application_Integration_Files\Patran\toPreProcessor.ses"
这两个命令之间的唯一区别是双引号(""),我想要输出,它应该用给定的输入文件打开应用程序,并且它应该保持命令直到我关闭应用程序(使用/ wait开关来保持命令)
这是我的Perl
脚本
my $cadfix1="C:/Software/Patran_x64/20170/bin/patran.exe";
my $cadfix2="D:/Application_Integration_Files/Patran/toPreProcessor.ses";
my $path1 ="start /wait "." " ."$cadfix1" . " " ."$cadfix2"."";
#my $path2="start /wait \"$cadfix1\" \"$cadfix2\"";
system($path1);
$ path1和$ path2指的是上面提到的第一个和第二个命令。
请有人帮我解决这个问题:)
答案 0 :(得分:1)
如果你想要输出,你需要使用反引号。
use strict;
use warnings;
my $command = '"C:/Software/Patran_x64/20170/bin/patran.exe"';
my $cadfix2 = '"D:/Application_Integration_Files/Patran/toPreProcessor.ses"';
my $path1 = `$command $cadfix2`;
我也不确定你为什么要使用perl这么简单,你可以运行一个批处理文件。
如果您想保持文件窗口打开,请将最后一行作为:
运行my $path1 = `cmd /k $command $cadfix2`;