1)标准输入0、输出1、错误2需要分别重定向,一个重定向只能改变它们中的一个。 2)标准输入0和标准输出1可以省略。(当其出现重定向符号左侧时) 3)文件描述符在重定向符号左侧时直接写即可,在右侧时前面加&。 4)文件描述符与重定向符号之间不能有空格!
当我们想要丢弃所有输出时,正确的方法是先重定向stdout到/dev/null,然后再将stderr重定向到stdout。这样,所有的输出都不会显示在终端上。 在编写Shell脚本或执行命令时,理解和正确使用I/O流的重定向是非常重要的。它不仅可以帮助我们控制脚本的输出内容,而且还能够在需要的时候对错误信息进行适当的处理。在脚本中正确...
1>/dev/null 首先表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息(将命令的输出扔弃掉了)。 2>&1 接着,标准错误输出重定向等同于 标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。 2>&1 和 &> 的解释 ls thereisno 1>...
Shell从命令行"去"掉 <newfile.txt,启动wc命令,将它的标准输入重定向到newfile.txt文件,并给wc命令传递一个参数-l,wc命令并不知道newfile.txt的存在,wc命令直观从标准输入中读取数据,结果只打印行数26,并不打印文件名称。
/dev/null:将输出或错误重定向到/dev/null,相当于丢弃输出。 ls/nonexistent_directory2>/dev/null 1. 会将错误信息丢弃,不会显示在终端上。 7. Here Document (<<) <<:用于将多行输入传递给命令。 cat<<EOF This is line 1. This is line 2. ...
实例2:将ls命令的输出重定向到文件。 shell ls -l > files.txt 1. 此命令会将ls -l命令的输出结果重定向到files.txt文件中。 实例3:将错误输出重定向到文件。 shell ls /nonexistdir 2> error.txt 1. 此命令会将因目录不存在导致的错误信息重定向到error.txt文件中。
实例2:将ls命令的输出重定向到文件。 shell ls -l > files.txt 此命令会将ls -l命令的输出结果重定向到files.txt文件中。 实例3:将错误输出重定向到文件。 shell ls /nonexistdir 2> error.txt 此命令会将因目录不存在导致的错误信息重定向到error.txt文件中。
Bourne shell 的重定向语法“2>&1”,意在通知 shell 把标准错误重定向到标准输出,这条语法的效果...
这个方法只重定向错误信息。 重定向错误和数据 这必须用两个重定向符号。需要在符号前面放上待重定向数据所对应的文件描述符,然后指向用于保存数据的输出文件。 wangsx@SC-201708020022:~$ ls -al test test2 test3 bad test 2> test6 1> test7 wangsx@SC-201708020022:~$ cat test6 ls: 无法访问'test':...