在以下示例中,我想从父批处理文件中调用一个子批处理文件,并将所有其余参数传递给子处理。有没有办法指出批处理文件中的最后n个参数?
C:\> parent.cmd child1 foo bar
C:\> parent.cmd child2 baz zoop
C:\> parent.cmd child3 a b c d e f g h i j k l m n o p q r s t u v w x y z
在parent.cmd中,我需要从参数列表中去除%1,并且只将其余参数传递给子脚本。
set CMD=%1
%CMD% <WHAT DO I PUT HERE>
我调查了使用SHIFT与%*,但这并不起作用。虽然SHIFT会将位置参数向下移动1,但%*仍然是指原始参数。
任何人有任何想法?我应该放弃并安装Linux吗?可悲的是,
重复? http://stackoverflow.com/questions/382587/how-to-get-batch-file-parameters-from-nth-position-on – 2009-04-17 18:54:54
这个问题回答了代码,没有工作。我在我的问题中加入了一些陈述来帮助澄清,而且看起来我从Johannes得到了一个确凿的答案。 – Dave 2009-04-17 23:29:09
哦,顺便说一句,当所有的男士从其他批次调用批次时都使用call。否则调用批处理文件将不会在被调用批处理退出后继续运行。 (可能在这里可能没有关系,只是一些最佳实践:-)) – Joey 2009-04-18 06:44:49