位置: 编程技术 - 正文

dos下遍历目录和文件的代码(主要利用for命令)(dos命令遍历文件)

编辑:rootadmin
===== 文件夹结构 ============================================= D:test ---A Folder 1 |-----A file 1.txt |-----A file 2.txt |-----A file 3.txt&#;&#;&#;&#;&#;&#;&#;&#; ---B Folder 2 |-----B file 1.txt |-----B file 2.txt |-----B file 3.txt&#;&#;&#;&#;&#;&#;&#;&#; |---B Folder 3 |-----B sub file 1.txt |-----B sub file 2.txt |-----B sub file 3.txt &#;&#;&#;&#;&#;&#;&#;&#; 结果 D:test. D:testA Folder 1. D:testA Folder 1A file 1.txt D:testA Folder 1A file 2.txt D:testA Folder 1A file 3.txt D:testB Folder 2. D:testB Folder 2B file 1.txt D:testB Folder 2B file 2.txt D:testB Folder 2B file 3.txt D:testB Folder 2B Folder 3. D:testB Folder 2B Folder 3B sub file 1.txt D:testB Folder 2B Folder 3B sub file 2.txt D:testB Folder 2B Folder 3B sub file 3.txt 结果 D:test. D:testA Folder 1. D:testA Folder 1A file 1.txt D:testA Folder 1A file 2.txt D:testA Folder 1A file 3.txt D:testB Folder 2. D:testB Folder 2B file 1.txt D:testB Folder 2B file 2.txt D:testB Folder 2B file 3.txt D:testB Folder 2B Folder 3. D:testB Folder 2B Folder 3B sub file 1.txt D:testB Folder 2B Folder 3B sub file 2.txt D:testB Folder 2B Folder 3B sub file 3.txt 那么 和 的区别是什么呢? 在有cd %work_path% 的时候,这两个命令执行的结果是一样的,就像我们上面举的例子。但是 for /R %%s in (.,*) do ( echo %%s ) 的批处理中没有cd %work_path% ,那么显示的将是这个批处理文件所在文件夹下面的遍历结果。 结果 D:test. D:testA Folder 1. D:testB Folder 2. D:testB Folder 2B Folder 3. 结果 D:test. D:testA Folder 1. D:testA Folder 1A file 1.txt D:testA Folder 1A file 2.txt D:testA Folder 1A file 3.txt D:testB Folder 2. D:testB Folder 2B file 1.txt D:testB Folder 2B file 2.txt D:testB Folder 2B file 3.txt D:testB Folder 2B Folder 3. D:testB Folder 2B Folder 3B sub file 1.txt D:testB Folder 2B Folder 3B sub file 2.txt D:testB Folder 2B Folder 3B sub file 3.txt 这样的话看出来区别了吧。 再看一个================================= 结果 D:testA Folder 1A file 1.txt D:testA Folder 1A file 2.txt D:testA Folder 1A file 3.txt D:testB Folder 2B file 1.txt D:testB Folder 2B file 2.txt D:testB Folder 2B file 3.txt D:testB Folder 2B Folder 3B sub file 1.txt D:testB Folder 2B Folder 3B sub file 2.txt D:testB Folder 2B Folder 3B sub file 3.txt 就是只显示了文件VisitF.bat - 对指定路径指定文件进行遍历的程序 VisitD.bat - 对指定路径指定目录进行遍历的程序 VisitL.bat - 对指定文件列表中的文件进行遍历的程序 VisitI.bat - 对指定路径指定DIR信息的文件进行遍历操作的的程序 Visit.bat - 文件遍历批处理程序 VisitCE.bat - 文件遍历批处理程序命令行增强版 在sp4 下出现类似的问题,第二个问题实际上也是fc的不兼容问题,他在按行号显示时,每行文字前有8 个字节位,而不是dos6和win9x 下的9 个,所以解决起来也很简单,将debug 脚本中的 e 'set file='改为 e 'set fil=' 即可。   但是,这只是就事论事而已,以上的提到的三个批处理,只是我在dos 下练兵用的试验原型,做得很粗糙,自从今年3 月份正式转向win 之后,使用中遇到了很多新问题,比如文件名包含空格的问题,系统/ 隐藏属性目录的问题;在nt下使用,又遇到了中文文件名的问题;而且由于循环体中使用了过多的文本流控制,导致了效率的严重低下;另外,三个程序功能上和实现上并没有太大的差别,没有拆分的必要。   综所上述,将以上代码重写就成为必须。合并代码,弥补漏洞,改善性能,书写文档,就出现了所谓的 V2 版,这中间其实并没有花很多功夫。   然而,一个偶然的下午,突然心血来潮,何不将visit 的命令行功能做一下增强,比如支持多个路径、多个过滤器(filter)、多个文件列表,原想只是加一个命令行参数分析循环,然而真正实现起来,却再次体会到了命令行的复杂,if for嵌套时冲定向输出,判定目录时根目录与子目录的不同,for 对过滤器的低能替换(win9x/dos) ,一个个新问题摩肩接踵,层出不穷,竟然整整耗了我大半个工作日的时间,才勉强实现了一个粗糙的版本,这就是所谓的 V2CE 版,对与严格的测试我没有多大的信心。   现在,再回头看我的工作,其实那个 V2CE 版其实是没有多大的应用价值。多个路径和过滤器,完全可以通过多次调用visit 来实现,而且实际上,我们大多数情况下只用一个路径和过滤器;而且,多参数控制带来了易用度的下降,用户总是对参数繁多的程序有一定的心理障碍,我个人对dos 压缩软件的爱好,从高到低依次是rar,zip,arj, 易用度就是第一靠量;另外,最重要的是,多参数控制导致了代码量和复杂性的大幅提升,这个程序一度让我钻进了if for构建的幽魂迷宫而不知南北西东,程序的可读性越来越差,调试起来也越来越困难,同时兼容性上拉上了更多的绊马索。   这些,就是功能提升所付出的代价,虽然这只是一个比较极端的例子,但是功能与简洁的平衡在程序设计的其重要性可见一斑。亲和性的界面并不意味着亲和性的代码,人性化的需求并不意味着人性化的实现,一味将使用方的复杂性转嫁给设计者(比如Windows), 并不是一个很聪明的主意,反之亦然(比如Linux ),这尚不考虑代码功能增强对设计方和使用方的双重施压。

推荐整理分享dos下遍历目录和文件的代码(主要利用for命令)(dos命令遍历文件),希望有所帮助,仅作参考,欢迎阅读内容。

dos下遍历目录和文件的代码(主要利用for命令)(dos命令遍历文件)

文章相关热门搜索词:cmd遍历目录,find遍历整个目录,find遍历整个目录,dos命令遍历文件,dos 递归遍历目录,dos 递归遍历目录,dos命令遍历文件,dos 递归遍历目录,内容如对您有帮助,希望把文章链接给更多的朋友!

Autorun 病毒清除工具bat代码 @EchoOffcolor2ftitleAutorun病毒清除工具-ByPhexonRem杀进程taskkill/F/IMSocksA.exe/IMSVOHOST.exe/IMAdobeR.exe/IMravmone.exe/IMwincfgs.exe/IMdoc.exe/IMrose.exe/IMsxs.exe/IMautorun.exe/IMKB

cmd dir结构树显示代码(列出目录文件) @rem此BAT文件名一定不能是"tree.bat",否则tree命令会实效,不知道为什么@rem可能是因为系统目录有"tree.com",系统会混淆吧.@rem用"dir.bat"作文件名却可以.@echooffr

sxs.exe的查杀bat代码 ::echo特征:在每个盘根目录下自动生成sxs.exe,autorun.inf文件,有的还在windowssystem下生成SVOHOST.exe或sxs.exe,文件属性为隐含属性。自动禁用杀毒软件::解

标签: dos命令遍历文件

本文链接地址:https://www.jiuchutong.com/biancheng/375021.html 转载请保留说明!

上一篇:dos命令for用法详解(dos的for用法)

下一篇:Autorun 病毒清除工具bat代码(autorun病毒怎么清理)

  • 高新技术企业享受15%税率优惠的条件
  • 纳税检查调减进项税额主表怎么不显示缴纳税款
  • 小规模纳税人销售已使用固定资产
  • 停车费定额发票税率
  • 资金账簿减半征收印花税财税2018 50号
  • 申报更正日期改变会导致逾期申报吗
  • 厂房房产税如何计算
  • 增值税可以抵扣企业所得税吗
  • 没有单价数量只有金额的发票可以用吗
  • 单位聘请临时工工资怎么报税
  • 购销合同印花税税率2023
  • 开办期间的税控设备怎么入账?
  • 提示没有安装QQ怎么处理
  • 公司发生的费用需要交税吗
  • 未分配利润怎么处理
  • 新会计准则规定资产如何入账
  • 企业所得税季报是填累计数吗
  • 高价转让股份
  • 增值税发票为什么要勾选认证
  • 商品进销差价主营业务收入
  • 自然人独资属于什么经济性质
  • 王者荣耀进不去怎么回事最新
  • 社会保险费的征收程序
  • 纳税人依法可以享受减免税待遇而没有享受的
  • 缴纳社保费现金流量?
  • ezulumain.exe是病毒进程吗 ezulumain进程安全吗
  • 总公司人员的工资子公司发,如何报税?
  • php数组函数,选班长
  • 固定资产公允价值变动会计处理
  • 十个php高级应用题
  • php获取文件内容的函数
  • 百度地图api的基本使用
  • 销售收入与销售成本
  • phpif函数的使用方法
  • 现金流方法
  • 最常用的成本核算方法表
  • php中自定义函数的语法格式
  • 嵌入html
  • 不是吧阿sir表情包
  • 朴素贝叶斯算法
  • php function函数的用法
  • taskset命令详解
  • 二手车交易发票怎么收费
  • 查账征收的纳税人能否简易注销
  • 帝国cms8.0版
  • sqlserver2005使用
  • 收据可以入账报销吗
  • 企业所得税和个人所得税都要交吗
  • 纳税申报人的对象是哪些
  • 经营性现金净流量公式
  • 质保期内出现质量问题,一直没有修复
  • 购买职工福利
  • 增值税代扣代缴范围
  • 会计中为什么要用黑色笔写
  • 利润总额和未分成比例
  • 股权转让 会计
  • 销售额是营业额吗?
  • MySQL replace into 语句浅析(一)
  • 如何在卸载程序中隐藏已安装程序
  • chrome浏览器81.0
  • bios设置从光驱启动优先,可是启动不了
  • Win7系统开机流程
  • mac系统常见问题
  • Win10 Mobile RedStone 14283已修复与已知问题汇总
  • jsp验证邮箱格式
  • nodejs 视频切片
  • 着色器模型
  • js实现隔行变色
  • 关于js的描述错误的是
  • linux shell终端
  • jquery移动端ui
  • 用jquery实现全选
  • iframe的使用和例子
  • javascript还有人用吗
  • android开发—01开发环境的搭建
  • 计算两gps坐标之间距离
  • 基于JAVASCRIPT实现的可视化工具是
  • 小规模纳税人企业所得税怎么征收
  • 西藏自治区税务局电子税务局
  • 出口退税 即征即退属于政府补助吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设