文件夹名字后面加了个.无法删除问题

网上有介绍一大堆的问题,但和我的情况总有点区别,最后找到这种方法

将以下这段代码保存在记事本中

 

DEL /F /A /Q \\?\%1

RD /S /Q \\?\%1

 

起个名字 任意名.bat 这样就建立了一个删除带点文件夹的批处理

使用:将带点的文件夹直接拖到 任意名.bat批处理中,就可以删除掉了

转载于:https://www.cnblogs.com/hudeam/p/7063958.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
### 回答1: 好的,以下是编写删除文件夹下3天前的文件,但是保留名字为 STAN04.LOG, STAN05.LOG, STAN06.LOG的文件的bat脚本的代码: ``` @echo off setlocal enabledelayedexpansion set folder=C:\folder set log1=STAN04.LOG set log2=STAN05.LOG set log3=STAN06.LOG for /f "delims=" %%i in ('dir %folder% /a-d /b') do ( set filename=%%i if not "!filename!" == "%log1%" if not "!filename!" == "%log2%" if not "!filename!" == "%log3%" ( for /f "usebackq" %%t in (`powershell -Command "(Get-Item '%folder%\!filename!').LastWriteTime"`) do ( if "%%t" LEQ "%date:~4,2%-%date:~7,2%-%date:~10,4%" ( del %folder%\!filename! ) ) ) ) echo Done. ``` 以上代码假设文件夹路径为 `C:\folder`,要保留的文件名分别为 `STAN04.LOG`、`STAN05.LOG`、`STAN06.LOG`。如果要修改文件夹路径或要保留的文件名,请修改对应的变量值。 ### 回答2: 可以使用以下批处理脚本来删除文件夹下3天前的文件,但保留名字为 STAN04.LOG, STAN05.LOG, STAN06.LOG的文件。 ``` @echo off setlocal set "folderpath=D:\your\folder\path" // 设置文件夹路径 forfiles /p "%folderpath%" /s /m * /d -3 /c "cmd /c if @isdir==FALSE if not @fname==\"STAN04\" if not @fname==\"STAN05\" if not @fname==\"STAN06\" echo del @path" endlocal ``` 请注意将 `D:\your\folder\path` 替换为您想要操作的文件夹路径。 这个脚本使用 `forfiles` 命令在指定的文件夹及其子文件夹中查找文件,并根据日期选择删除文件。 `/p` 参数指定要搜索的文件夹路径。 `/s` 参数告诉 `forfiles` 命令在文件夹及其子文件夹中进行搜索。 `/m *` 参数匹配所有文件,即不限制文件名。 `/d -3` 参数指定只选择3天前的文件。 `/c` 参数后面跟着要执行的命令。`cmd /c` 表示在命令提示符下执行命令。 `if @isdir==FALSE` 条件用于仅选择文件。 `if not @fname==\"STAN04\"`、`if not @fname==\"STAN05\"` 和 `if not @fname==\"STAN06\"` 条件用于保留名字为 `STAN04.LOG`、`STAN05.LOG` 和 `STAN06.LOG` 的文件。 `echo del @path` 命令用于显示要删除的文件路径,可以根据需要删除 `echo` 来实际执行删除操作。 希望对你有帮助! ### 回答3: 可以使用以下的bat脚本来实现删除文件夹下3天前的文件,但是保留名字为 STAN04.LOG, STAN05.LOG, STAN06.LOG的文件: ``` @echo off REM 设置文件夹路径 set folder=path\to\your\folder REM 获取当前日期前3天的日期 for /f "skip=3 delims=" %%A in ('powershell Get-Date ^| Get-Date -Format "{MM/dd/yyyy}" ^| findstr [0-9]') do set date=%%A REM 删除文件夹下3天前的文件,但保留指定的文件名 forfiles /p "%folder%" /d -%date% /c "cmd /c if not @isdir==TRUE if /I @file NEQ STAN04.LOG if /I @file NEQ STAN05.LOG if /I @file NEQ STAN06.LOG del @path" ``` 请注意,你需要将"path\to\your\folder"替换为你要操作的文件夹路径。此脚本将根据当前日期的前3天日期(跳过非数字字符),删除文件夹下3天前的所有文件,除了文件名为STAN04.LOG,STAN05.LOG和STAN06.LOG的文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值