Windows批处理文件有哪些不太为人所知,但很重要和有用的特性?
指南:
每个答案一个特征 给出特性的简短描述和示例,而不仅仅是文档链接 将答案限制在本地功能,即不需要额外的软件,如Windows资源包
澄清:这里我们指的是由cmd.exe处理的脚本,这是WinNT变体的默认值。
(请参见:Windows批处理文件:.bat vs .cmd?)
Windows批处理文件有哪些不太为人所知,但很重要和有用的特性?
指南:
每个答案一个特征 给出特性的简短描述和示例,而不仅仅是文档链接 将答案限制在本地功能,即不需要额外的软件,如Windows资源包
澄清:这里我们指的是由cmd.exe处理的脚本,这是WinNT变体的默认值。
(请参见:Windows批处理文件:.bat vs .cmd?)
当前回答
列出所有驱动器:
fsutil fsinfo drives
其他回答
隐藏从命令重定向到>nul 2>&1的所有输出。
例如,某些命令行程序即使重定向到>nul也会显示输出。但是,如果像下面这行那样重定向输出,所有输出都将被抑制。
PSKILL NOTEPAD >nul 2>&1
编辑:有关其工作原理的解释,请参见忽略命令的输出。
没有编辑器,需要创建一个批处理文件?
copy con test.bat
只需输入命令,按enter键输入新行。 按Ctrl-Z和Enter关闭文件。
搜索路径上的可执行文件(或其他类似路径的字符串,如果需要):
c:\> for %i in (cmd.exe) do @echo. %~$PATH:i
C:\WINDOWS\system32\cmd.exe
c:\> for %i in (python.exe) do @echo. %~$PATH:i
C:\Python25\python.exe
c:\>
逃离“管道”:
echo ^| ^< ^> ^& ^\ ^^
命令分隔符:
cls & dir
copy a b && echo Success
copy a b || echo Failure
在第二行,&&之后的命令仅在第一个命令成功时运行。
在第3行,||之后的命令仅在第一个命令失败时运行。