如何在 Windows 批处理文件中连接字符串?
我有一个目录,我想列出所有带有 ;
的 .doc
文件。
我知道以下批处理命令会回显所有文件:
for /r %%i In (*.doc) DO echo %%i
但现在我想将它们全部放入一个变量中,在其间添加 ;
并立即回显所有文件。
我怎样才能做到这一点?
set myvar="the list: "
for /r %%i In (*.doc) DO <what?>
echo %myvar%
I have a directory for which I want to list all the .doc
files with a ;
.
I know the following batch command echos all the files:
for /r %%i In (*.doc) DO echo %%i
But now I want to put them all in a variable, add a ;
in between and echo them all at once.
How can I do that?
set myvar="the list: "
for /r %%i In (*.doc) DO <what?>
echo %myvar%
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
怎么样:
What about:
基于 Rubens 的解决方案,您需要启用 env 变量的延迟扩展(键入“help setlocal”或“help cmd”),以便在循环中正确评估 var:
还要考虑以下限制(MSDN):
Based on Rubens' solution, you need to enable Delayed Expansion of env variables (type "help setlocal" or "help cmd") so that the var is correctly evaluated in the loop:
Also consider the following restriction (MSDN):
请注意,变量
@fname
或@ext
可以简单地连接起来。此操作:将所有 PDF 文件重命名为“filename_old.pdf”
Note that the variables
@fname
or@ext
can be simply concatenated. This:renames all PDF files to "filename_old.pdf"