[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理for /f中%%i的扩展为何会失败?

我在C盘建了4个文本:a.txt b.txt c.txt d.txt
  1. @echo off
  2. (
  3. echo ========扩展到a属性=========
  4. for /f %%i in ('dir /b /a-d c:\*.txt') do echo %%~ai
  5. echo ========扩展到t属性=========
  6. for /f %%i in ('dir /b /a-d c:\*.txt') do echo %%~ti
  7. echo ========扩展到z属性=========
  8. for /f %%i in ('dir /b /a-d c:\*.txt') do echo %%~zi
  9. )>$
  10. move /y $ 1.txt >nul
  11. pause>nul
复制代码
结果是这样的:
  1. ========扩展到a属性=========
  2. ECHO 处于关闭状态。
  3. --a------
  4. ECHO 处于关闭状态。
  5. ECHO 处于关闭状态。
  6. ========扩展到t属性=========
  7. ECHO 处于关闭状态。
  8. 2011/04/22 23:31
  9. ECHO 处于关闭状态。
  10. ECHO 处于关闭状态。
  11. ========扩展到z属性=========
  12. ECHO 处于关闭状态。
  13. 3162
  14. ECHO 处于关闭状态。
  15. ECHO 处于关闭状态。
复制代码
其他属性如n x f 什么的都正常。。。就这三个不正常。。而且能显示的修改时间和文件大小都不对。。。这是怎么回事呀?
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

2# hanyeguxing


还是不行。。结果一样。。

TOP

本帖最后由 abcdshenji 于 2011-5-2 16:13 编辑

4# powerbat


试过可以。。。但是我不知道pushd的用法。。要查查了

TOP

http://bathome.net/viewthread.php?tid=12128&highlight=pushd
看了这篇帖子后还是不太明白。。难道%%i部分扩展跟必须用pushd?两者之家存在某些关联?这是什么道理啊

TOP

8# zm900612


原来如此。。学习了。。也谢谢powerbat。。你们说的都是一个道理:也就是说%%i扩展中的%%i的值必须带有路径。。如果没有路径就代表当前目录。。是吧。。谢谢

TOP

返回列表