昨天我看到了关于如何获取文件空间信息的问题。我试过这样的命令:FOR循环中的命令(如何获取我请求的数据)
FOR/F %% A IN('dir c:\^| findstr/rc:Adr')DO echo A:“%% A”B:“%% B”C :“%% C”D:“%% D”
我认为可以提取最后一行,从我的本地语言开始,“Adr”,你可能是“目录”。它不完全相同,因为昨天我得到了命令本身的输出结果:dir c:\^| findstr/rc:Adr。现在,我在CMD再次测试并得到了这一点:
C:\>FOR %A IN (dir c:\ ^| findstr /rc:Adr) Do Echo A:"%A"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"dir"B:"%B"C:"%C"D:"%D"
A:"dir"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"c:\"B:"%B"C:"%C"D:"%D"
A:"c:\"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"|"B:"%B"C:"%C"D:"%D"
A:"|"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"findstr"B:"%B"C:"%C"D:"%D"
A:"findstr"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"/rc:Adr"B:"%B"C:"%C"D:"%D"
A:"/rc:Adr"B:"%B"C:"%C"D:"%D"
C:\>FOR %A IN ('dir c:\ ^| findstr /rc:Adr') Do Echo A:"%A"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"'dir"B:"%B"C:"%C"D:"%D"
A:"'dir"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"c:\"B:"%B"C:"%C"D:"%D"
A:"c:\"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"|"B:"%B"C:"%C"D:"%D"
A:"|"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"findstr"B:"%B"C:"%C"D:"%D"
A:"findstr"B:"%B"C:"%C"D:"%D"
C:\>Echo A:"/rc:Adr'"B:"%B"C:"%C"D:"%D"
A:"/rc:Adr'"B:"%B"C:"%C"D:"%D"
C:\>dir c:\ | findstr /rc:Adr
Adresářů: 6, Volných bajtů: 1 447 161 856
C:\>
我有问题
接下来的情况:如果我想打印文件名 :
输出@Echo off
FOR %%F IN (dir *.inf) DO (
echo %%F
)
第一项是目录,然后文件。我做错了什么不是获得命令本身,而是我所要求的数据?
很好的回答。谢谢 – user1141649 2012-04-03 13:45:24