中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-02 16:40
48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 新手求助一for命令具体问题
可打印版本  1,086 / 5
第1楼 calefe 发表于 2006-12-12 03:40
新手上路 发帖 6 积分 16
新手求助一for命令具体问题
有段命令如下
for /f "skip=5 tokens=1,* delims= " %a in (dir.txt) do @echo %a%b%c

dir.txt是重定向当前目录下的dir信息
我想取出当中的文件名和修改日期的信息(如2006-12-11 aaa.txt)去掉时间和大小

问题
1。2006-12-11 08:52 8 aaa.txt 时间和大小中间好像不认为是空格 ,"delims= "没区分
2。如果成功了我又想把取出来的重定向到另一个文档中可以吗?如到文档temp.txt下。内容为
2006-12-11 aaa.txt
2006-12-11 bbb.txt



小弟刚看了一会会,有点不太理解。帮助文档看不懂,问下各位。谢谢

[ Last edited by calefe on 2006-12-11 at 02:44 PM ]
第2楼 calefe 发表于 2006-12-12 03:41
新手上路 发帖 6 积分 16
在线等
第3楼 xusen 发表于 2006-12-12 04:30
中级用户 发帖 74 积分 290 来自 浙江·金华
for /f "tokens=1,4" %a in ('dir') do @echo %a %b
第4楼 calefe 发表于 2006-12-12 04:58
新手上路 发帖 6 积分 16
麻烦能再说详细点吗。这样会有标题
(驱动器 本地磁盘
卷的序列号是
D:\)
还有就是能重定向到一个文件上吗?
谢谢
第5楼 lxmxn 发表于 2006-12-12 14:30
版主 发帖 4,938 积分 11,386

  此方法按照楼主的意思来写的,其中不足之处是最后两行会有多余的信息。
  下面这个方法同样可以达到楼住的目的,把bat文件放在要测试的目录下运行即可。
第6楼 calefe 发表于 2006-12-12 23:43
新手上路 发帖 6 积分 16
谢谢。我最终的目地是想删某特定时间的特定文件名的文件
for不是太理解 对楼上有个问题:
for /f "skip=7 tokens=1-3*" %%a in (dir.txt) do (
if not "%%d"=="" echo %%a %%d
echo %%a %%d>>temp.txt
)
在这个循环里两个a b 的变量在每一次循环里是相对应的吗,在这个例子里就是说a b是不是代表同一个文件的文件名和修改时间?
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023