for-loop - 执行命令输出到多行
问题描述
我正在尝试从cmd .exe 执行命令,但它输出到多行...
for %b in ("AB","FG") do (for /D %a in ("C:\FileStore\%~b*") do (echo %~fa))
输出:
C:\Users\admin>(for / %a in ("C:\FileStore\AB*") do (echo %~fa ) )
C:\Users\admin>(echo C:\FileStore\AB Map 1 )
C:\FileStore\AB Map 1
C:\Users\admin>(for / %a in ("C:\FileStore\FG*") do (echo %~fa ) )
C:\Users\admin>(echo C:\FileStore\FG Map 2 )
C:\FileStore\FG Map 2
但我只想要这个...
C:\FileStore\AB Map 1
C:\FileStore\FG Map 2
我怎样才能解决这个问题?
解决方案
要禁用命令的隐式回显,请在命令前加上@
:
@for %b in ("AB","FG") do @(for /D %a in ("C:\FileStore\%~b*") do @(echo %~fa))
请注意,该行中的每个命令都需要自己的静音前缀。
推荐阅读
- windows - Powershell替换包含文件的路径
- swift - 启动应用程序mac后图标状态栏消失
- php - 如何在 Laravel 5.5 中正确编写控制器方法的单元测试?
- android - 找不到图书馆 Google Play 计费或附加功能
- mysql - Mysql - 搜索多词查询
- git - 在 rebase 中使用 git 重新排序提交
- telnet - nghttpd 连接自动关闭
- python-3.x - python中的Unicode列表到整数列表的转换
- python - BOOTSTRAP // 尽管添加了 cdn 链接和参考样式链接,但仍无法正常工作 // PYTHON
- python - 时区之间的变化