中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 06:26
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何某个目录中的文件个数赋值给一个变量 查看 763 回复 6
楼 主 如何某个目录中的文件个数赋值给一个变量 发表于 2008-07-30 22:03 ·  中国 广东 深圳 电信
新手上路
积分 6
发帖 2
注册 2008-07-30 21:20
18年会员
UID 122426
性别 男
状态 离线
如题
2 发表于 2008-07-30 22:07 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
for /f "tokens=1 delims=:" %%a in ('dir /s /b "C:\test" ^| findstr /n .*') do set num=%%a
echo %num%
3 发表于 2008-07-30 22:13 ·  中国 广东 深圳 电信
新手上路
积分 6
发帖 2
注册 2008-07-30 21:20
18年会员
UID 122426
性别 男
状态 离线
Originally posted by HAT at 2008-7-30 10:07 PM:
@echo off
for /f "tokens=1 delims=:" %%a in ('dir /s /b "C:\test" ^| findstr /n .*') do set num=%%a
echo %num%


原来用了^这个就可以了啊,谢谢了
4 发表于 2008-07-30 22:20 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
用这个管道和findstr 效率不会降低吗?

for /f %%a in ('dir/b/s/a-d c:\test') do set/a n+=1
echo %n%
pause
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
bat-zw +4 2008-07-30 23:01
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
5 发表于 2008-07-30 23:54 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
dir /s /b | wc -l>a.txt
set /p num=<a.txt
set num=%num: =%
echo %num%


wc.exe
http://upload.cn-dos.net/img/652.zip
6 发表于 2008-07-31 01:29 ·  中国 江苏 常州 武进区 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
效率不比前面的低哦

@echo off
for /f %%i in ('dir /s /a-d "C:\test" ^| find "个文件"') do set num=%%i
echo %num%
pause
简单!简单!再简单!
7 发表于 2008-07-31 10:26 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
6楼只能适用于中文版的系统:)
论坛跳转: