如何进行文件名搜索,删除该名称下的所有文件,

时间:2016-04-30 20:45:37

标签: batch-file

我想进行文件名搜索,删除该名称下的所有文件。

我想在其中说一下你想搜索哪些文件,我输入一个示例eminem,它会有一个列表,说明找到320个文件名为eminem的文件,并列出文件类型,例如20 .img文件名为eminem 300 .mp3文件,名称为eminem,然后是一个选项,表示您要删除这些文件。

另一个想法是选择在哪里搜索记忆棒的示例,您可以使用它来搜索和删除所有文件。这只是一个想法,而且我非常有用,我找到了一些搜索文件的代码。

我想要一个很好的说法,你想要搜索什么,让你输入你想要搜索的内容,然后搜索它,你就可以选择删除它们,我会发现它非常有用。 / p>

这里有一些代码我已经

@echo off
DIR /s c:\eminem - superman.mp3
::and to delete it the code would be 
del /p /s c:\minecraft.exe

但我的想法是使用批处理文件搜索删除工具。

1 个答案:

答案 0 :(得分:0)

你可以尝试这样的事情:

@echo off
Title Searching by file name and delete it
Color 9E & Mode con cols=60 lines=3
echo(
set /P "file=Type the name of file to search : "
cls
Color 9D & Mode con cols=100 lines=100
echo(
echo                   Please Wait ... Searching for "%file%" is in progress ....
setlocal EnableDelayedExpansion
rem Populate the array with existent files in folder
set i=0
for /f "delims=" %%a in ('dir "C:\%file%*.*" /s /b') do (
   set /A i+=1
   set "list[!i!]=%%a"
)
set Files=%i%
rem Display array elements
cls
for /L %%i in (1,1,%Files%) do (
    echo(
    echo file number %%i: "!list[%%i]!" 
    echo(
)
pause
echo.
Set /P "nbFile=Type the file number in the list above to delete or Type ALL to delete all files = "
If /I "%nbFile%" == "ALL" (
    for /L %%i in (1,1,%Files%) do (
        echo Del "!list[%%i]!"
        pause
        Del "!list[%%i]!"
    )
) Else (    
    for /L %%i in (1,1,%Files%) do (
        IF "%nbFile%" equ "%%i" (
            echo Del "!list[%nbFile%]!"
            pause
            Del "!list[%nbFile%]!"
        )   
    )   
)   
pause
exit