如何强制我的批处理文件隐藏cmd窗口并说“是”?

时间:2013-10-03 21:30:18

标签: windows batch-file cmd

好的,所以我试图制作一个简单的BAT文件来删除多个文件夹中的文件。现在这是我到目前为止。我想这样它删除Temp目录中的所有文件和文件夹,但不删除数据目录中的文件夹...我也希望它对提示说“是”。我该怎么做???

@ECHO OFF
DEL "C:\ProgramData\TVersity\Media Server\data\*.*" 
DEL "%LOCALAPPDATA%\Temp\*.*"

我打算在这个BAT文件中添加更多目录,所以如果你能回答“如何命令”...因为我想知道如何指定是删除所有文件夹和文件还是只删除文件。

此外,如何自动对所有提示“是”。

5 个答案:

答案 0 :(得分:7)

del /s /q c:\somedirectory\*.*

应该注意在没有删除目录的情况下递归删除所有文件,在“安静”模式下,这不会给你提示。

要删除整个目录及其所有文件和子目录,可以使用rd使用相同的标记:

rd /s /q c:\somedirectory

http://technet.microsoft.com/en-us/library/cc771049.aspx

答案 1 :(得分:2)

您可以通过键入del找到del /?命令中可用的选项。

DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names

  names         Specifies a list of one or more files or directories.
                Wildcards may be used to delete multiple files. If a
                directory is specified, all files within the directory
                will be deleted.

  /P            Prompts for confirmation before deleting each file.
  /F            Force deleting of read-only files.
  /S            Delete specified files from all subdirectories.
  /Q            Quiet mode, do not ask if ok to delete on global wildcard
  /A            Selects files to delete based on attributes
  attributes    R  Read-only files            S  System files
                H  Hidden files               A  Files ready for archiving
                I  Not content indexed Files  L  Reparse Points
                -  Prefix meaning not

在你的情况下,你想要

DEL /Q "C:\ProgramData\TVersity\Media Server\data\*.*" 
DEL /Q "%LOCALAPPDATA%\Temp\*.*"

答案 2 :(得分:0)

要退出脚本,您需要在结尾添加“退出”。

要自动按Y,您可以回显字符'Y'并将其输入您的命令。

例如:

@ECHO OFF
echo Y | DEL "C:\ProgramData\TVersity\Media Server\data\*.*" 
echo Y | DEL "%LOCALAPPDATA%\Temp\*.*"
exit

答案 3 :(得分:0)

使用nircmd最小化命令提示符窗口:

nircmd win min title "Command Prompt"

答案 4 :(得分:0)

start /min "" ".\batchfile.bat"

将从另一个批处理文件中最小化批处理文件。