中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 21:37
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]如何使用IF语句判断某目录下文件总数
可打印版本  900 / 3
第1楼 sukey00 发表于 2008-03-20 15:11
新手上路 发帖 1 积分 4
[求助]如何使用IF语句判断某目录下文件总数
如何使用IF语句判断某目录下文件总数

目录 c:\mytest ,如果该目录下有32个*.txt文件,就执行某些命令,否则提示错误,因为CMD命令不会写,简易用下面IF描述

if c:\mytest\ 文件数 >32(

echo ''
)else(
echo ''
)

请问如何实现,非常感谢
第2楼 hlighta 发表于 2008-03-22 00:04
初级用户 发帖 12 积分 21
@echo off
dir *.txt | findstr "个文件" > temp.txt
for /f " tokens=1 delims=./ " %%j in ( temp.txt ) do set num= %%j
if %num% geq 32 (echo go on pls.) else echo. & echo Here have something

wrong

set num=
del temp.txt

这个有点麻烦不过应该可以达到你的目的。

我不知道怎么直接调用命令的值,只好用了一个临时文件,希望朋友们可以帮我修改一下怎么能不用临时文件直接调用值。
第3楼 zqz0012005 发表于 2008-03-22 02:55
中级用户 发帖 135 积分 297
Re 『第 2 楼』:
@echo off
for /f " tokens=1 delims=./ " %%j in ('dir *.txt ^| findstr "个文件"') do set num= %%j
if %num% geq 32 (goto do) else (echo Error & set "num=" & exit /b)
:do
set num=
echo There is enough textfiles for you to do something.
::insert your command here
第4楼 moniuming 发表于 2008-03-23 01:18
银牌会员 发帖 574 积分 1,335 来自 广西
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023