windows - 批处理 : "usebackq" not expected at this time

标签 windows batch-file cmd

我有这个代码:

setlocal enableextensions
for "usebackq" %%i in (`dir /b`) do echo * %%i
endlocal

我想做的很简单:打印带有 * 前缀的当前目录的内容。像这样:

* .idlerc 
* .oracle_jre_usage
* .swt
* Searches
* Contacts
* Downloads
* My Directory
* Documents
* Desktop
* Favorites
* Images
* Saved Games
* Music
* 3D Objects

但是,当执行时,它说:

"usebackq" not expected at this time

我是 Batch 中的 for 语句的新手。有人可以帮忙吗?

最佳答案

使用FOR /F并且您不需要在此处的选项中使用引号*,因为其中没有空格:

setlocal enableextensions
FOR /F usebackq %%i IN (`DIR /B`) DO ECHO * %%i
endlocal

*虽然保留引号不会造成任何伤害

关于windows - 批处理 : "usebackq" not expected at this time,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41060170/

相关文章:

c++ - 如何在 GUI 应用程序中封装控制台 exe 文件?

windows - 在 C++ 中与 VARIANT 类型相互转换的简单方法

windows - 如何通过批处理文件知道命令是否执行成功?

windows - 批处理命令如何为 set/p 制作列表

c++ - 用 C 编写的文件创建程序的 Windows 缓存使用量增加

windows - 我需要做什么才能将 DIB 转换为 BMP?

c++ - 如何使用 visual studio 2005 从命令行编译

java - 执行位于 jar 文件中的批处理文件

windows - 为什么从命令行启动时 Excel 在退出时抛出异常?

javascript - 如何使用命令行工具从 PDF 文件中提取 JavaScript?