标题: [文件操作] [已解决]批处理for语句取带空格的文件 [打印本页]
作者: nonfish 时间: 2009-8-20 17:04 标题: [已解决]批处理for语句取带空格的文件
- dir E:\test\*.rar /O:-D >test.txt
- for /F "skip=10 tokens=4" %%i in (test.txt) do echo %%i
复制代码
如上
E:\test下有很多个rar文件,我用这个命令可以输出一般的rar文件的名字,但如果rar名字带有空格,如"新建 文件夹.rar",那他输出时就只输出新建两个字,后面的给截取了,怎么解决这种问题呢?
[ 本帖最后由 nonfish 于 2009-8-20 18:47 编辑 ]
作者: nonfish 时间: 2009-8-20 17:24
我知道了,应该是我dir的时候的问题- 2009-08-20 16:42 20 5.rar
- 2009-08-20 16:42 20 4.rar
- 2009-08-20 16:42 20 3.rar
- 2009-08-20 16:42 20 复件 (4) 3.rar
- 2009-08-20 16:42 20 复件 (2) 3.rar
- 2009-08-20 16:42 20 复件 3.rar
- 2009-08-20 16:42 20 复件 (3) 3.rar
- 2009-08-20 16:42 20 复件 (2) 2.rar
- 2009-08-20 16:42 20 复件 2.rar
- 2009-08-20 16:42 20 复件 (3) 2.rar
- 2009-08-20 16:42 20 复件 (4) 2.rar
复制代码
我要取第四列,而空格会把复件 3.rar等类型的文件分开,所以取出来的txt就只有复件了,而没有空格之后的名字
作者: zhouyongjun 时间: 2009-8-20 17:32
for /f "delims=" %%i in ('dir/b/a-d e:\test\*.rar') do echo %%i
作者: nonfish 时间: 2009-8-20 18:08
谢谢楼上的,不过我自己已经搞定了
和你的差不多- dir E:\test\*.rar /b /O:-D >test.txt
- for /F "skip=10 delims=" %%i in (test.txt) do echo "%%i"
复制代码
大家看看,还有啥问题
对了,楼上的,最后一个%%i是不是应该加上引号呢
我发现,如果不加引号的话,这个语句里的echo换成del的话,就无法删除了
作者: zhouyongjun 时间: 2009-8-20 21:52 标题: 回复 4楼 的帖子
呵呵,echo显示不用加引号,del或ren需要加引号
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |