中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 20:51
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 文件关联查看命令 查看 585 回复 4
楼 主 文件关联查看命令 发表于 2008-03-27 23:10 ·  法国
高级用户
★★
积分 783
发帖 268
注册 2006-12-26 17:18
19年会员
UID 74627
性别 男
状态 离线
命令在此存档 搜索关键词: 文件关联

@for /f "tokens=1,2 delims==" %a in ('assoc') do @(for /f "tokens=1,* delims==" %c in ('ftype^|find "%b"') do @(echo %a=%d) )


注释 显示格式为:

文件扩展名=执行此扩展名所调用的程序

就是太慢 谁给优化下

[ Last edited by PPdos on 2008-3-27 at 11:19 PM ]
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
2 发表于 2008-03-27 23:59 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
不要find先直接ftype到个文本,然后过滤 “没有找到。。。。”那句。
不直接回显到CMD下,速度能快些。

最后在type下。。。文本
3 发表于 2008-03-28 00:15 ·  中国 湖北 武汉 电信
中级用户
★★
积分 471
发帖 207
注册 2007-05-03 14:53
19年会员
UID 87369
性别 男
状态 离线
for /f "delims== tokens=1*" %a in ('assoc') do @(if not "%b"=="" for /f "tokens=1* delims==" %c in ('ftype %b 2^>nul') do @if not "%d"=="" echo:%a=%d)
4 For: ThinKing 发表于 2008-03-28 01:16 ·  法国
高级用户
★★
积分 783
发帖 268
注册 2006-12-26 17:18
19年会员
UID 74627
性别 男
状态 离线
3楼的效率高多了 估计还能再提高点
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
5 发表于 2008-03-28 08:05 ·  中国 湖北 武汉 电信
中级用户
★★
积分 471
发帖 207
注册 2007-05-03 14:53
19年会员
UID 87369
性别 男
状态 离线
@echo off & SETLOCAL ENABLEDELAYEDEXPANSION

for /F "delims=" %%a in ('ftype') do set %%a
for /F "delims== tokens=1,2" %%a in ('assoc') do (
echo.%%a=!%%b!
)
pause
论坛跳转: