gpt4 book ai didi

parameters - 有没有办法指示批处理文件中的最后 n 个参数?

转载 作者:行者123 更新时间:2023-12-03 01:00:22 25 4
gpt4 key购买 nike

在下面的示例中,我想从父批处理文件调用子批处理文件,并将所有剩余参数传递给子批处理文件。

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 吗?

最佳答案

遗憾的是,

%* 将始终扩展到所有原始参数。但是您可以使用以下代码片段构建一个包含除第一个参数之外的所有参数的变量:

rem throw the first parameter away
shift
set params=%1
:loop
shift
if [%1]==[] goto afterloop
set params=%params% %1
goto loop
:afterloop

不过,我认为它可以做得更短......我不经常写这类事情:)

不过应该​​可以。

关于parameters - 有没有办法指示批处理文件中的最后 n 个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/761615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com