中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何使用IF语句判断某目录下文件总数
作者:
标题: [求助]如何使用IF语句判断某目录下文件总数 上一主题 | 下一主题
sukey00
新手上路





积分 4
发帖 1
注册 2008-3-20
状态 离线
『楼 主』:  [求助]如何使用IF语句判断某目录下文件总数

如何使用IF语句判断某目录下文件总数

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

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

  echo ''
)else(
   echo ''
)

请问如何实现,非常感谢

2008-3-20 15:11
查看资料  发短消息 网志   编辑帖子  回复  引用回复
hlighta
初级用户





积分 21
发帖 12
注册 2008-1-20
状态 离线
『第 2 楼』:  

@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

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

我不知道怎么直接调用命令的值,只好用了一个临时文件,希望朋友们可以帮我修改一下怎么能不用临时文件直接调用值。

2008-3-22 00:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zqz0012005
中级用户




积分 297
发帖 135
注册 2006-10-21
状态 离线
『第 3 楼』:  

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

2008-3-22 02:55
查看资料  发短消息 网志  OICQ (411976538)  编辑帖子  回复  引用回复
moniuming
银牌会员

永远的菜鸟



积分 1335
发帖 574
注册 2007-11-27
来自 广西
状态 离线
『第 4 楼』:  


@echo off
for /f "delims=" %%a in ('dir /s/b/a-d "c:\mytest\*.txt"') do (
set /a a+=1
)
if %a% geq 32 (
你要执行的命令
) else (
echo 文件少于32个...
)
pause


2008-3-23 01:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: