. : : ClassiClub ForuM : : .

会员中心 论坛帮助 日历事件 标记论坛已读
返回   精品技术论坛 » 技术论坛 » 『软件使用』

『软件使用』: 电脑软件推荐, 电脑软件使用, 经验分享



发表新主题 关闭主题
 
主题工具
em
 
em 的头像
终极会员
 
资 料:
注册日期: Jan 2001
帖子: 8,640 声望值: 6
精华: 1,解答: 3
#1 旧 2012-05-28, 08:44:04 Icon5 已解答: 【求助】急:批处理, 如何判断一目录下是否存在带扩展名的文件或子目录
em 当前离线  

要搞个Window XP CMD下的 批处理,卡在了一个地方,有个功能是处理用户输入的文件,用户输入后要判断该目录是否存在有扩展名的文件或者目录,如果有则退出。

例如:C:\下运行批处理,用户输入ABC,则判断C:\ABC目录下是否存在有任何子目录,或者带有任何扩展名的文件,如有则退出,都没有,继续执行下一步。 正常是ABC目录是只有不带扩展名的文件。


.
最佳解答为:namejm
演示代码,未经测试:
代码:
@echo off
set "input="
set /p "input=请输入目录名称:"
if not exist "%input%" echo 不存在指定文件夹&pause&exit
set "folder="
for /f %%i in ('dir /ad /b "%input%" 2^>nul') do set "folder=%%i"
if defined folder exit
set "ext="
for /f %%i in ('dir /a-d /b "%input%" 2^>nul') do set "ext=%%~xi"
if defined ext exit
echo 指定目录下不存在子文件夹,也不存在带有后缀名的文件
pause
namejm
 
namejm 的头像
超级会员
 
资 料:
注册日期: Apr 2009
帖子: 1,393 声望值: 3
精华: 21,解答: 84
#2 旧 2012-05-28, 19:01:56 默认
namejm 当前离线  

演示代码,未经测试:
代码:
@echo off
set "input="
set /p "input=请输入目录名称:"
if not exist "%input%" echo 不存在指定文件夹&pause&exit
set "folder="
for /f %%i in ('dir /ad /b "%input%" 2^>nul') do set "folder=%%i"
if defined folder exit
set "ext="
for /f %%i in ('dir /a-d /b "%input%" 2^>nul') do set "ext=%%~xi"
if defined ext exit
echo 指定目录下不存在子文件夹,也不存在带有后缀名的文件
pause

此帖于 2012-05-29 11:58:02 被 namejm 编辑. .


TotalCommder、EveryThing、batch、AutoHotKey、EverEdit
精通Word、Excel、PPT的安装与卸载
熟练掌握VB、C++、SQL的拼读与缩写
em
 
em 的头像
终极会员
 
资 料:
注册日期: Jan 2001
帖子: 8,640 声望值: 6
精华: 1,解答: 3
#3 旧 2012-05-29, 00:05:35 默认
em 当前离线  

非常感谢,明早测试一下。
em
 
em 的头像
终极会员
 
资 料:
注册日期: Jan 2001
帖子: 8,640 声望值: 6
精华: 1,解答: 3
#4 旧 2012-05-29, 10:18:02 默认
em 当前离线  

试了一下,有报错。
2> was unexpected at this time.
好像是到Set "folder=%%i" 这里出错。
namejm
 
namejm 的头像
超级会员
 
资 料:
注册日期: Apr 2009
帖子: 1,393 声望值: 3
精华: 21,解答: 84
#5 旧 2012-05-29, 11:58:41 默认
namejm 当前离线  

不好意思,在括号对里的>忘了转义了
2楼已经修正
C#
 
C# 的头像
核心会员
 
资 料:
注册日期: Oct 2000
帖子: 3,069 声望值: 3
精华: 0,解答: 12
#6 旧 2012-05-29, 17:30:18 默认
C# 当前离线  

rd 一个目录,如果报错,说明有子目录,如果没报错,重建这个目录就好.



滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红

白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 都付谈笑中
namejm
 
namejm 的头像
超级会员
 
资 料:
注册日期: Apr 2009
帖子: 1,393 声望值: 3
精华: 21,解答: 84
#7 旧 2012-05-29, 21:11:22 默认
namejm 当前离线  

楼主的文件夹下是有文件的,现在是要检测那些文件有没有带扩展名
楼上没仔细看楼主的需求哈
em
 
em 的头像
终极会员
 
资 料:
注册日期: Jan 2001
帖子: 8,640 声望值: 6
精华: 1,解答: 3
#8 旧 2012-05-30, 17:48:29 默认
em 当前离线  

成功了,非常感谢。
发表新主题 关闭主题

主题工具

论坛规则  发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子
论坛启用 vB 代码
版面启用 表情符号
版面启用 [IMG] 代码
版面禁用 HTML 代码


所有时间均为北京时间, 现在的时间是 09:08:14.

本论坛带宽由迅通网络提供
SSL证书由TrustAsia提供

Copyright © 2000 - 2019 ClassiClub Forum All Rights Reserved.
粤ICP备09123456号