繁体   English   中英

Linux Shell 中的 `{} +` 的 Windows 等效项是什么?

[英]What is the Windows equivalent of `{} +` in Linux Shell?

我正在尝试制作一个简单的批处理文件来编译一些代码,但我一生都无法弄清楚或找到有关如何执行此操作的任何信息。

在 Linux 上,我正在这样做:

find ./bin-int/ -type f -name '*.o' -exec rgblink -o ./bin/lapis.gb -n ./bin-int/symbols.sym {} +

这基本上找到了 ./bin-int/ 中所有扩展名为 .o 的文件,并将它们用作命令 rgblink 的输入变量。

但我一生无法弄清楚如何在 Windows 上执行此操作。 我得到的最接近的是

for /r ".\bin-int" %%i in (*.o); do rgblink -o ./bin/lapis.gb  -n ./bin-int/symbols.sym %%i

这是错误的,因为我不想为每个文件运行一次命令。 我希望每个文件同时成为命令的输入。

我怎样才能做到这一点? 谢谢!

您需要先将 append 列表转换为变量,然后在命令中运行该列表:

@for /r ".\bin-int" %%i in (*.o) do @call set "list=%%list%% %%i"
rgblink -o ./bin-int/lapis.gb  -n ./bin-int/symbols.sym%list%

这是未经测试的,因为我无法确认您的列表应该是什么样子,但您会明白的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM