Windows 使用批处理文件在单个文件中写入多行 我在批量文件编程的中间,我被困在下面的脚本中。 ( IF EXIST h:\*.png del h:*.png IF EXIST h:\*.mov del h:*.mov ) > file.txt

Windows 使用批处理文件在单个文件中写入多行 我在批量文件编程的中间,我被困在下面的脚本中。 ( IF EXIST h:\*.png del h:*.png IF EXIST h:\*.mov del h:*.mov ) > file.txt,windows,batch-file,Windows,Batch File,我的意图是,脚本首先在给定的驱动器(在本例中为h)中查找png和mov格式,然后如果存在,则将其删除。我想将所有进程写入一个txt文件(file.txt) 因为这是一个简单的问题,我真的不想在主要场合问。我先在聊天室(hello world room)试了一下。但是我没有得到任何有用的回放 提前感谢您的帮助您可以尝试以下方法: @echo off &SETLOCAL ( IF EXIST h:\*.png ( DIR /b h:\*.png del h:\*.png )

我的意图是,脚本首先在给定的驱动器(在本例中为h)中查找png和mov格式,然后如果存在,则将其删除。我想将所有进程写入一个txt文件(file.txt)

因为这是一个简单的问题,我真的不想在主要场合问。我先在聊天室(hello world room)试了一下。但是我没有得到任何有用的回放

提前感谢您的帮助

您可以尝试以下方法:

@echo off &SETLOCAL
(
IF EXIST h:\*.png (
    DIR /b h:\*.png
    del h:\*.png
)
IF EXIST h:\*.mov (
    DIR /b h:\*.mov
    del h:\*.mov
)) > file.txt
TYPE file.txt
你可以试试这个:

@echo off &SETLOCAL
(
IF EXIST h:\*.png (
    DIR /b h:\*.png
    del h:\*.png
)
IF EXIST h:\*.mov (
    DIR /b h:\*.mov
    del h:\*.mov
)) > file.txt
TYPE file.txt

不需要IF。一个简单的单内衬就可以了,而且添加额外的扩展也很容易:

>file.txt (for %%X in (png mov) do 2>nul dir /b h:*.%%X && del h:*.%%X) 
编辑

拍摄,它可以变得更简单:

>file.txt dir /b h:*.png h:*.mov && del h:*.png h:*.mov
或者,如果只想指定一次列表:

set "list=h:*.png h:*.mov"
>file.txt dir /b %list% && del %list%

不需要IF。一个简单的单内衬就可以了,而且添加额外的扩展也很容易:

>file.txt (for %%X in (png mov) do 2>nul dir /b h:*.%%X && del h:*.%%X) 
编辑

拍摄,它可以变得更简单:

>file.txt dir /b h:*.png h:*.mov && del h:*.png h:*.mov
或者,如果只想指定一次列表:

set "list=h:*.png h:*.mov"
>file.txt dir /b %list% && del %list%