|
stornager
中级用户
   scriptlover
积分 328
发帖 131
注册 2007-3-25
状态 离线
|
『楼 主』:
[求助]关于for和dir命令的一点疑惑
使用 LLM 解释/回答一下
@echo off
color 1f
for /f "usebackq" %%i in (`dir /a-s /b /s c:\`) do echo %%~dpi>a.txt
pause
我想使上面的代码运行得到c:\所有根目录和子目录中具有系统属性的文件的完整路径,将其保存在a.txt中,然而输出的结果是C:\Documents and Settings\Administrator\桌面\
我在论坛上搜索了很多关于for和dir应用方面的帖子,对其原理有了一定了解,
但是关于上面的输出结果我实在想不通,请高手指点!!
Last edited by stornager on 2007-5-27 at 08:46 PM ]
|

scriptlover
Be with script forever!! |
|
2007-5-27 09:57 |
|
|
lp1129
初级用户
 
积分 186
发帖 92
注册 2007-3-27
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
你搞错了>和>>的用法,只用>的话,会替换掉以前的所有内容,只生成最后一次的文本,按你的想法应该用>>
@echo off
color 1f
for /f "usebackq" %%i in (`dir /a-s /b /s c:\`) do echo %%~dpi>>a.txt
pause
|
|
2007-5-27 10:07 |
|
|
sonicandy
中级用户
  
积分 273
发帖 91
注册 2007-5-7
状态 离线
|
|
2007-5-27 11:46 |
|
|
stornager
中级用户
   scriptlover
积分 328
发帖 131
注册 2007-3-25
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
只怪本人弄巧成拙,要想得到c:\所有根目录和子目录中具有系统属性的文件的完整路径,一个命令即可搞定,即dir /a-s /b /s c:\|more
|

scriptlover
Be with script forever!! |
|
2007-5-28 17:43 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
Originally posted by stornager at 2007-5-28 17:43:
只怪本人弄巧成拙,要想得到c:\所有根目录和子目录中具有系统属性的文件的完整路径,一个命令即可搞定,即dir /a-s /b /s c:\|more
貌似这个错了. dir /as
dir /s/b/as/p c:\
|
|
2007-5-28 18:16 |
|
|
stornager
中级用户
   scriptlover
积分 328
发帖 131
注册 2007-3-25
状态 离线
|
『第 6 楼』:
使用 LLM 解释/回答一下
版主,dir好象没有as这个参数......我按照标准的dir命令参数写的,它没错吧??
|

scriptlover
Be with script forever!! |
|
2007-5-28 18:59 |
|
|
dikex
高级用户
    潜水修练批处理
积分 788
发帖 366
注册 2006-12-31
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
/as是/a的其中一种,还可以是/ad,/ar等
/A 显示具有指定属性的文件。
attributes D 目录 R 只读文件
H 隐藏文件 A 准备存档的文件
S 系统文件 - 表示“否”的前缀
|

正在潜水修练的批处理小白 |
|
2007-5-28 19:10 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
得到c:\所有根目录和子目录中具有系统属性的文件的完整路径
和
你dir的/a-s参数的作用不符。
|
|
2007-5-28 20:12 |
|
|
stornager
中级用户
   scriptlover
积分 328
发帖 131
注册 2007-3-25
状态 离线
|
|
2007-5-28 22:02 |
|