zoukankan      html  css  js  c++  java
  • DOS批处理小案例应用分享

    想必大多数办公的同志都有个习惯----往桌面上堆放文件,各种文件。几天下来桌面就杂乱无章,乱七八糟的。能做一个快速清理的功能,是很有实用价值的。比如采用Windows自带的DOS批处理系统,就可快速搭建并应用。如果掌握一些基本要领,还能DIY自定义功能。下面就以一个小例子作学习参考 ------- 基于.bat批处理命令快速汇总所有符合条件的文件放置于指定文件夹中 (图片文件为例)。


    准备

    首先要整理一下思绪,需要用到有关命令:复制、粘贴、剪切、匹配字符串、新建文件夹、删除等。在dos中有copyxcopymovemddel等命令可供选择,还有结构语句如IFFOR等。

    编写

    尝试使用多种做法:

    【1】

    @echo off
    
    cd
    c:
    cd C:UsersAdministratorDesktop
    
    if not exist _imgs md _imgs
    move .*.jpg .\_imgs
    move .*.jpeg .\_imgs
    move .*.png .\_imgs
    move .*.gif .\_imgs
    move .*.tga .\_imgs
    move .*.tiff .\_imgs
    move .*.psd .\_imgs
    move .*.jfif .\_imgs
    
    REM pause
    

    上述语法很清晰,先进入desktop桌面文件夹中,然后如果没有_imgs文件夹,就新建,有则忽略,随后移动相关符合后缀名的文件至该目录中。

    【2】

    @echo off
    
    cd
    c:
    cd C:UsersAdministratorDesktop
    
    if not exist _imgs md _imgs
    
    for /d %%i in (jpg jpeg gif png tga tiff psd jfif) do move ".*.%%i" ".\_imgs"
    
    REM pause
    

    同样的流程,只是借了FOR循环语句来处理move操作命令。
    使用for /d来检索目录中的路径及文件名,如果符合条件则执行循环语句。

    【3】

    @echo off
    
    cd
    c:
    cd C:UsersAdministratorDesktop
    
    if not exist _imgs md _imgs
    
    for /d %%i in (jpg jpeg gif png tga tiff psd jfif) do (
        for %%j in (*.%%i) do (
            echo %%j
            xcopy .\%%j .\_imgs
            if exist .\_imgs\%%j (
            del .\%%j
            ) else (
                echo nocopy
            )
    
        )
    
    )
    REM pause
    

    这种做法更自然、更详细,更容易拓展。嵌套了一层For,判断是否已经复制了相关文件,如果没有复制到就不会删除,有则删除。复制删除语句被拆分细化,逻辑严密。

    结语

    当然啦,读者可以自行更改文件名后缀以供符合不同格式的文件来做整理;还能使用通配符继续缩小文件检索范围,如加前缀或后缀等。很实用的脚本,希望能帮到读者!

    PS

    数据无价,测试DOS中的del命令需要格外严谨、上心。最好备份好文件,谨防误删。

  • 相关阅读:
    Vim深入研究
    信息安全系统设计基础第十三周学习总结——20135308
    信息安全系统设计基础实验五:通讯协议设计
    信息安全系统设计基础第十二周学习总结 ——20135308
    信息安全系统设计基础实验四:外设驱动程序设计
    信息安全系统设计基础实验三:实时系统的移植
    GDB深入研究——20135308芦畅
    信息安全系统设计基础第十一周学习总结——20135308
    第九次ScrumMeeting博客
    第八次ScrumMeeting博客
  • 原文地址:https://www.cnblogs.com/sharpeye/p/15353207.html
Copyright © 2011-2022 走看看