假设我已经在下一个路径文件中创建了一个文件夹:"C:\users\charqus\desktop\MyFolder"
,我在CMD上运行下一个命令:
mkdir "C:\users\charqus\desktop\MyFolder"
我收到如下消息:“子目录或文件C:\ users \ charqus \ desktop \ MyFolder已经存在”。
因此,命令行中是否有任何命令可以删除此返回的消息? 我试着回声,但这不是我想要的。
答案 0 :(得分:27)
将输出重定向到nul
mkdir "C:\users\charqus\desktop\MyFolder" > nul
根据命令的不同,您可能还需要重定向错误:
mkdir "C:\users\charqus\desktop\MyFolder" > nul 2> nul
Microsoft describes the options here,这是有用的阅读。
答案 1 :(得分:3)
之前的答案显示了如何压制命令的所有输出。这将删除命令失败时显示的有用错误文本。以下示例显示了一种更好的方法:
C:\test>dir
Volume in drive C has no label.
Volume Serial Number is 4E99-B781
Directory of C:\test
20/08/2015 20:18 <DIR> .
20/08/2015 20:18 <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 214,655,188,992 bytes free
C:\test>dir new_dir >nul 2>nul || mkdir new_dir >nul 2>nul || mkdir new_dir
C:\test>dir new_dir >nul 2>nul || mkdir new_dir >nul 2>nul || mkdir new_dir
如上所示,此命令成功禁止原始警告。但是,如果无法创建目录,请参见以下示例:
C:\test>icacls c:\test /deny "Authenticated Users":(GA)
processed file: c:\test
Successfully processed 1 files; Failed processing 0 files
C:\test>dir new_dir2 >nul 2>nul || mkdir new_dir2 >nul 2>nul || mkdir new_dir2
Access is denied.
然后可以看出,会显示一条描述问题的错误消息。