批处理文件中的“ nul”是什么?

时间:2018-12-29 08:16:52

标签: batch-file

我很想知道什么是nul。通常使用:

  • 当我们想隐藏命令的输出时。在这种情况下,我们说“我们将STDOUTSTDERR的输出重定向到nul(如果我们指定了2>&1)”。
  • 当我们要创建一个新文件时。然后我们通常使用How to create empty text file from a batch file?所说的type nul > newfile.txt甚至是copy nul newfile.txt

我还认为这是一个文件:

C:\Users\username> nul
Permission denied.

C:\Users\username> where nul
INFO: Could not find files for the given pattern(s).

C:\Users\username> where /r C:\ nul
INFO: Could not find files for the given pattern(s).

但是nul 是什么?我的研究只显示了它的用法。

我还从this阅读了https://ss64.com篇很棒的文章,内容为:

  

使用NUL 设备创建空文件。

那么nul是设备吗?如果是这样,有人可以解释一下吗?此外,对null也有些困惑。他们有什么区别?

1 个答案:

答案 0 :(得分:4)

Nul作为文件存在于每个目录中。它吞没了发送给它的任何东西。

  

保留的名称。这些是指设备,例如

copy filename con 
     

将文件复制到控制台窗口。

CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, 

COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, 

LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9

CONIN$, CONOUT$, CONERR$

来自Trouble with renaming folders and sub folders using Batch