码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • .bat批处理命令处理文件


    批处理命令处理文件找到上级目录,并删除文件与文件夹。

    这里新建一个.txt文件,并将文件名改名为FileOperation.bat。

    文件内容如下:

    1. ::例如:"c:\F1\F2\F3",我在c:\F1\F2\F3\b.bat创建一个bat文件想去删除上级目录F2中的文件已经文件夹。
    2. :: ---注释不能连续2行,中间必须空1行???这里没有空行好像就有问题。
    3. ::例如:"c:\F1\F2\F3",我在c:\F1\F2\F3\b.bat创建一个bat文件想去复制c:\F1\F2\F3\a.txt文件到d盘,就需要用到此代码。复制文件自己查方法。
    4. ::@echo off 表示不输出执行命令输出,可以删除@符号后运行.bat文件后,看其中的区别
    5. @echo off
    6. ::echo ------------测试获取当前.bat文件路径的上级路径.并从上级路径删除文件与文件夹------------
    7. echo ----------------------------------------------
    8. ::设置CurrentPath=当前.bat文件所在目录
    9. set CurrentPath=%~dp0
    10. ::设置P1Path=当前.bat文件所在目录的上1级目录
    11. set P1Path=
    12. ::设置P2Path=当前.bat文件所在目录的上2级目录
    13. set P2Path=
    14. ::设置P3Path=当前.bat文件所在目录的上3级目录
    15. set P3Path=
    16. ::开始计算当前目录上级路径.开始代码。
    17. :begin
    18. for /f "tokens=1,* delims=\" %%i in ("%CurrentPath%") do (set content=%%i&&set CurrentPath=%%j)
    19. ::结束条件
    20. if "%P1Path%%content%\" == "%~dp0" goto end
    21. set P3Path=%P2Path%
    22. set P2Path=%P1Path%
    23. set P1Path=%P1Path%%content%\
    24. goto begin
    25. :end
    26. ::结束计算当前目录上级路径.结束代码
    27. ::输出当前.bat文件所在目录
    28. echo CurrentPath=%~dp0
    29. ::输出当前.bat文件所在目录的上1级目录
    30. echo P1Path=%P1Path%
    31. ::输出当前.bat文件所在目录的上2级目录
    32. echo P2Path=%P2Path%
    33. ::输出当前.bat文件所在目录的上3级目录
    34. echo P3Path=%P3Path%
    35. ::----------------------删除文件-------------------------------------------
    36. ::----删除F4目录下的文件:与.bat文件目录相同 ---注释不能连续2行,中间必须空1行
    37. ::设置 delFileName4=delFile4.txt 的文件的路径 ---注释不能连续2行,中间必须空1行
    38. set delFileName4=%~dp0F4\delFile4.txt
    39. ::输出是否删除文件?delFileName4 的值
    40. echo ----------- Delete File ? %delFileName4% -----------4
    41. ::执行删除文件操作:删除前询问
    42. del /p %delFileName4%
    43. ::----删除F3目录下的文件:与.bat文件目录相同 ---注释不能连续2行,中间必须空1行
    44. ::设置 delFileName3=delFile3.txt 的文件的路径 ---注释不能连续2行,中间必须空1行
    45. set delFileName3=%~dp0delFile3.txt
    46. ::输出是否删除文件?delFileName3 的值
    47. echo ----------- Delete File ? %delFileName3% -----------3
    48. ::执行删除文件操作:删除前询问
    49. del /p %delFileName3%
    50. ::----删除F2目录下的文件:.bat文件目录上1级目录 ---注释不能连续2行,中间必须空1行
    51. ::设置 delFileName2=delFile2.txt 的文件的路径
    52. set delFileName2=%P2Path%F2\delFile2.txt
    53. ::输出是否删除文件?delFileName2 的值
    54. echo ----------- Delete File ? %delFileName2% -----------2
    55. ::执行删除文件操作:删除前询问
    56. del /p %delFileName2%
    57. ::----删除F1目录下的文件:.bat文件目录上2级目录 ---注释不能连续2行,中间必须空1行
    58. ::设置 delFileNam1=delFile1.txt 的文件的路径 ---注释不能连续2行,中间必须空1行
    59. set delFileNam1=%P2Path%delFile1.txt
    60. ::输出是否删除文件?delFileNam1 的值
    61. echo ----------- Delete File ? %delFileNam1% -----------1
    62. ::执行删除文件操作:删除前询问
    63. del /p %delFileNam1%
    64. ::设置 rdDirName=rdDir 的文件夹路径
    65. set rdDirName=%P2Path%F2\F3\rdDir
    66. ::输出是否删除文件夹?rdDirName的值
    67. echo ----------- Delete File Folder ? %rdDirName% -----------
    68. ::执行删除文件夹操作:删除前询问并删除文件加下所有子文件夹与文件
    69. rd /s %rdDirName%
    70. ::pause表示暂停
    71. pause

    双击运行文件效果图如下

    这里展示下我测试的目录结构

    整个测试放在了C:\Test文件夹下。

    使用"tree /f"可以查看文件目录树状结构,也可以使用"tree /f >tttt.txt"将树状结构保存在tttt.txt文件中。

    从下图看可以看到。Test,F1,F2,F3,F4,rdDir是文件夹。FileOperation.bat是批处理脚本。

     参考资料:

    [BAT] 如何获取bat的上一级目录、上两级目录..._bat 上层目录_Risun_Lee的博客-CSDN博客@echo offset currPath=%~dp0set parentPath=set parentparentPath=:beginfor /f "tokens=1,* delims=\" %%i in ("%currPath%") do (set front=%%i&&set currPath=%%j)if "%parentPath%%front%\" == "%~dp0" goto endset parentparentPath=%parentPath%se_bat 上层目录https://blog.csdn.net/risun_lee/article/details/116039567

    批处理删除指定文件或文件夹_菇毒的博客-CSDN博客批处理删除指定文件或文件夹1. DEL1.1 DEL 的命令参数1.2 用 DEL 命令删除文件1.3 在 cmd 中查看 DEL 的帮助2. RD2.1 RD 的命令参数2.2 用 RD 删除文件夹2.3 在 cmd 中查看 RD 的帮助1. DEL1.1 DEL 的命令参数使用 del 命令能指定文件,Del (erase)[Drive:][Path]FileName指删除指定文件。指定要删除的文件或文件集的位置和名称。语法格式如下:del [Drive:][Path]FileName[ _批处理删除指定文件https://blog.csdn.net/weixin_43960383/article/details/124367384

  • 相关阅读:
    Nginx缓存基础
    java返回前端树形结构数据(2种实现方式)
    Linux:将mysql数据导入mongodb
    C语言之编程基础
    redis知识点整合
    linux服务器docker 搭建 redis集群
    杭州亚运会用到哪些黑科技?
    面向对象的三大特性: 继承,封装,多态
    js数组介绍:创建、length的用法、冒泡排序法、选择排序法
    linux bin文件安装包
  • 原文地址:https://blog.csdn.net/ZFSR05255134/article/details/133085102
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号