dir>c:\file.txt 2>&1 为什么dir>c:\file.txt不用加&,2>&1要加&
时间: 2023-07-04 19:08:04 浏览: 63
cuda报错 OSError: libcudart.so.10.0: cannot open shared object file: No such file
在命令行中,`>`符号用于将命令的输出重定向到指定的文件中。例如,在命令行中运行`dir>c:\file.txt`,会将`dir`命令的输出重定向到`c:\file.txt`文件中。
当我们想要将错误消息也重定向到同一个文件中时,我们需要使用`2>`符号。例如,`dir 2>c:\file.txt`会将`dir`命令的错误消息重定向到`c:\file.txt`文件中。
但是,如果我们想要同时将输出和错误消息都重定向到同一个文件中,我们需要使用`&`符号将两个命令连接起来。例如,`dir>c:\file.txt 2>&1`就会将`dir`命令的输出和错误消息都重定向到`c:\file.txt`文件中。
需要注意的是,`&`符号用于将两个命令连接起来,所以在`dir>c:\file.txt`命令中不需要使用`&`符号。而`2>&1`命令只是将标准错误输出重定向到标准输出,它本身并不是一个完整的命令,所以需要使用`&`符号将其与前面的命令连接起来。
阅读全文