gpt4 book ai didi

batch-file - 用于删除目录中具有唯一根茎的文件的批处理脚本

转载 作者:行者123 更新时间:2023-12-04 00:04:31 25 4
gpt4 key购买 nike

是否可以编写一个批处理文件来删除目录中文件根名称的前 n 个字符与该目录中任何其他文件名的前 n 个字符不匹配的所有文件?例如,假设目录包含以下内容:

Purcell_HenryA.txt
Purcell_HenryB.txt
Casaubon_IsaacA.txt

在这种情况下,我们希望删除目录中前 13 个字符与目录中任何其他文件的前 13 个字符不匹配的所有文件。 (也就是说,我们只想删除 Casaubon_IsaacA.txt。)我找到了删除目录中所有具有唯一扩展名的文件的脚本,但不知道如何开始编写此脚本,因此不胜感激对于问题的任何线索。

最佳答案

这会检查 14 个字符及以上的根文件名 - 如果只有 1 个文件具有相同的前导 13 个字符,那么它将回显 del。去掉回显,让它执行删除操作。

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b /a-d') do (
set "part=%%~na"
if not "!part:~13,1!"=="" (
set "part=!part:~0,13!"
for /f "delims=" %%b in ('dir /b /a-d "!part!*.*" ^|find /c "!part!" ') do (
if %%b EQU 1 echo del "%%a"
)
)
)

关于batch-file - 用于删除目录中具有唯一根茎的文件的批处理脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17480069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com