使用Windows命令行删除\bin目录中的所有文件

使用Windows命令行删除\bin目录中的所有文件,windows,command-line,batch-file,Windows,Command Line,Batch File,我想清理我的开发目录中的二进制文件。有没有一种方法可以使用Windows命令行在目录结构中递归并删除bin目录中的所有文件?我正在使用Windows7 根据Nathan的说法,我试着制作一批foo.bat: …这很有效。您应该编写一个bat文件: for /r %%f in (*) do 'WHATEVER YOU WANT TO DO' 您应该编写一个bat文件: for /r %%f in (*) do 'WHATEVER YOU WANT TO DO' 我已经有一段时间没有使用DOS了

我想清理我的开发目录中的二进制文件。有没有一种方法可以使用Windows命令行在目录结构中递归并删除bin目录中的所有文件?我正在使用Windows7

根据Nathan的说法,我试着制作一批foo.bat:


…这很有效。

您应该编写一个bat文件:

for /r %%f in (*) do 'WHATEVER YOU WANT TO DO'

您应该编写一个bat文件:

for /r %%f in (*) do 'WHATEVER YOU WANT TO DO'

我已经有一段时间没有使用DOS了,但是

DEL BIN\*.*

这将删除当前目录下名为BIN的目录中的文件。

我已经有一段时间没有使用DOS了,但是

DEL BIN\*.*

这将删除当前目录下名为BIN的目录中的文件。

创建一个包含以下内容的批处理文件:

for /R %%x in (bin) DO del "%%x\\*.*" /Q

这将递归地遍历当前目录中的所有子目录,并删除每个BIN文件夹中的所有文件。您可以将**更改为要删除的任何文件类型。

创建包含以下内容的批处理文件:

for /R %%x in (bin) DO del "%%x\\*.*" /Q

这将递归地遍历当前目录中的所有子目录,并删除每个BIN文件夹中的所有文件。您可以将**更改为要删除的任何文件类型。

这应适用于批处理文件:

for /R %%x in (bin) do if exist "%%x" del /q "%%x\*.*"

如果直接从命令行运行此命令,请将%%x的所有实例替换为%x。

这应在批处理文件中起作用:

for /R %%x in (bin) do if exist "%%x" del /q "%%x\*.*"


如果直接从命令行运行此命令,请将%%x的所有实例替换为%x。

@MarcB,这不是我想要的。从一个特定的目录开始,我希望删除树中任何位置的bin目录中存在的所有文件。然后你应该在前面这样说,而不是拒绝你所问问题的完全有效的答案。在文件系统中的任何位置查找bin目录并删除其内容如何。@MarcB,请重新阅读问题。应该注意关键字recurse。是的,和?您没有说递归查找bin目录。你刚才说的递归,所以我们其他人都认为这意味着你想通过一个“bin dir”递归删除它的内容。如果你得到了我的评论+2个实际答案,并且犯了同样的错误,那么接受你的措辞是错误的。通过目录结构递归并删除bin目录中的所有文件意味着一件事;很抱歉,你不明白,但语言清楚,正是我想要做的。@MarcB,这不是我想要的。从一个特定的目录开始,我希望删除树中任何位置的bin目录中存在的所有文件。然后你应该在前面这样说,而不是拒绝你所问问题的完全有效的答案。在文件系统中的任何位置查找bin目录并删除其内容如何。@MarcB,请重新阅读问题。应该注意关键字recurse。是的,和?您没有说递归查找bin目录。你刚才说的递归,所以我们其他人都认为这意味着你想通过一个“bin dir”递归删除它的内容。如果你得到了我的评论+2个实际答案,并且犯了同样的错误,那么接受你的措辞是错误的。通过目录结构递归并删除bin目录中的所有文件意味着一件事;很抱歉,您没有理解,但是语言很清楚,正是我想要做的。这不会搜索目录树。这不会搜索目录树。很抱歉,我误读了。我将其放入一个批处理文件中,这似乎抛出了一堆del x\*.*/Q,这导致系统无法找到指定的文件。您可以在每个Bin目录上看到del命令的结果。我认为它给出的信息是,当Bin目录为空时,系统无法找到指定的文件。但是,Bin文件夹中的文件没有被删除。我认为这取决于是否有一个完整的bin文件夹层次结构?起始目录没有bin的直接子体。您可以尝试以下操作:@ECHO OFF for/R%%x in。执行调用:myExistFunc%%x GOTO:EOF:myExistFunc(如果存在)%~1\。\bin调用:myDeleteFunc%%~1\bin GOTO:EOF:myDeleteFunc echo。正在从%1 del%~1**/Q转到EOFhmm删除文件。。。这看起来更接近,但它不起作用;我的格式正确吗?请看我编辑的问题。对不起,我看错了。我将其放入一个批处理文件中,这似乎抛出了一堆del x\*.*/Q,这导致系统无法找到指定的文件。您可以在每个Bin目录上看到del命令的结果。我认为它给出的信息是,当Bin目录为空时,系统无法找到指定的文件。但是,Bin文件夹中的文件没有被删除。我认为这取决于是否有一个完整的bin文件夹层次结构?起始目录没有bin的直接子体。您可以尝试以下操作:@ECHO OFF for/R%%x in。do call:myExistFunc%%x获得
O:EOF:myExistFunc(如果存在)%~1\.\bin调用:myDeleteFunc%%~1\bin转到:EOF:myDeleteFunc echo。正在从%1 del%~1**/Q转到EOFhmm删除文件。。。这看起来更接近,但它不起作用;我的格式正确吗?看看我编辑的问题。