【发布时间】:2017-03-06 09:08:26
【问题描述】:
我正在调用类似的 cmd:
perl ScriptGen.pl Target.c %PreProcessorPath%\preproc.exe Arg1 Arg2 > clean.c
我收到错误,这意味着 Arg1 和 Arg2 未正确传递给预处理器。
我想通过将目标文件和预处理器路径本身作为 perl 脚本的参数来调用这个 perl 脚本,而 Arg1 Arg2 是 preproc 理解的 perl 脚本的参数。
编辑:有一个
my $cmd = shift @ARGV
在脚本开始时解析参数,然后脚本使用它。
【问题讨论】:
-
也许你可以努力让你的问题不那么混乱/混乱?看起来您的期望可能与记录的行为不同,但我们不知道您的期望是什么。
-
@Jackson:您能否解释一下
perl文件参数是target.c或preproc.exe以及我们如何获得arg1和arg2的perl文件。如果您在批处理文件SET中运行此操作,则PATH为PreprocessorPath\prepoc.exe和相同的exe具有Arg1和Arg2参数。这怎么可能。 -
该命令中没有管道
-
ok,perl输入参数是源文件,需要修改,其余都是传给perl脚本的参数(第一个是预处理器的路径,后面两个是直接参数通过 perl 脚本传递给预处理器)
-
Target.c你的意思是这是source file
标签: perl arguments c-preprocessor