gpt4 book ai didi

cmd - 如何在 Windows CMD 中的单行命令之间插入注释?

转载 作者:行者123 更新时间:2023-12-04 22:24:36 57 4
gpt4 key购买 nike

我是 3D 软件 Blender 的用户。
我正在尝试在 CMD 中运行,因为 Blender 提供了 CLI 控制。
下面的代码工作正常。

blender -b "my.blend" ^
--python-text "lowResoltion" ^
-S "scene 01" ^
-o "// output \ ##" -F PNG -f 3 ^
-S "scene 02" ^
-o "// output \ ##" -F PNG -f 5

不过我想暂时注释掉第二行的lowResolution。
然而,上面的代码看起来像几行,但由于 ^ 的原因,它是一行,所以当我使用 rem:: 时,它似乎被视为告诉 Blender rem/:: 而不是告诉 CMD。
CMD 可以理解 rem:: 的母语,但对 Blender 来说听起来像是一门外语。

在这种情况下,有没有办法注释掉第二行?


Squashman 带来的链接中的问题与我的问题类似。
然而,这个链接的解决方案,%= =% 注释方法,似乎仍然传递给 Blender 而不是 CMD。
我想也许批处理文件的语法不能解决这个问题。
当我用 %= =% 包裹第二行时, blender 打印 ?????? 并退出,如下图所示。 enter image description here


杰布的方法行得通!
我拍了一张GIF作为纪念。
请注意两个图像的分辨率如何随着一行代码替换而改变。
由于 jeb 的解决方案,我现在可以轻松地测试我的代码,以使用数十个 blend 文件批量渲染数千张图像。
enter image description here

最佳答案

proposed solution with percent expansion在命令行上不起作用,因为在命令行上 undefined variable 不会扩展为空,而是保持不变。

但是您可以使用很少使用的百分比修饰符语法,%~$ANY_PATH_VARIABLE:I

这会在 ANY_PATH_VARIABLE 中列出的所有路径中搜索存储在 FOR 变量 I 中的文件。
听起来很奇怪,但在您的情况下很简单

FOR %# in (dummy) DO @blender -b "my.blend" ^
%~$==--python-text "lowResoltion":# ^
-S "scene 01" ^
-o "// output \ ##" -F PNG -f 3 ^
-S "scene 02" ^
-o "// output \ ##" -F PNG -f 5 ^
%~$==SECOND-comment, the double colon is forbidden:# ^
%~$==THIRD-comment, but percent % is okay:#

注释以%~$==开始,以:#结束。

这会在 ==--python-text...==SECOND-comment 等变量中搜索 for-variable %#, ...
这些变量不可能存在,因为它们以等号开头。
因此扩展的结果总是空的,因为dummy 不能是 undefined variable 的任何目录中的文件。

只有一个小问题,如果您仍在尝试在 Windows XP 中使用它,则变量名不能包含分隔符(空格、逗号、等号)。

关于cmd - 如何在 Windows CMD 中的单行命令之间插入注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60161654/

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