[英]Perl Scripts on Windows 10 run from Explorer but not Command Prompt
[英]Perl system command to run scripts at command prompt
这是我尝试使用的一个非常简短的脚本,以使PC的命令提示符运行一系列脚本。 脚本的数量各不相同,但是对于此示例,假设有10个,编号为0-10。 这些脚本是SAS程序文件。 我正在使用system
命令,但是找不到错误。
use strict; use warnings;
for ( my $i = 0; $i < 10; $i++ ) {
system "sas -SYSIN $i.sas -ICON -NOSPLASH -LOG 'c:\Users\...' -PRINT 'c:\Users\...' ";
}
我收到以下错误:
"Missing braces on \o{} at "perlscript.pl" line 6, near "sas..."
我在system
命令后的文本周围放置了花括号,但这并不能解决问题。 我也尝试使用括号()
,但没有任何乐趣。 在读取文件位置时,加上大括号或()
也会给我“无法识别的转义”错误。
您在双引号字符串中使用反斜杠: system "... \\U ..."
。 这些要么是特殊的转义码,要么被忽略。 无论哪种情况,您最终都得到了您不想要的字符串。 为避免这种情况,请转义所有反斜杠,或对路径使用正斜杠: C:/foo/bar
。 即使在Windows上,大多数工具也可以使用正斜杠正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.