4.6.3 文件重定向
文件重定向指的是,在执行命令时指定命令的输入、输出和错误的输出和输入方式。例如,可以命令的结果输出到一个文件中。如表4.2所示列出了文件重定向的常见使用方法。
表4.2 文件重定向
|
command > filename< xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> |
把标准输出重定向到一个文件中 |
|
command >> filename |
把标准输出以追加的方式重定向到一个文件中 |
|
command 1 > fielname |
把标准输出重定向到一个文件中 |
|
command > filename 2>&1 |
把标准输出和标准错误一起重定向到一个文件中 |
|
command 2 > filename |
把标准输出的错误重定向到一个文件中 |
续表
|
command 2 >> filename |
把标准输出以追加的方式重定向到一个文件中 |
|
command >> filename 2>&1 |
把标准输出和标准错误一起追加到一个文件中 |
|
command < filename >filename2 |
把command命令以f i l e n a m e文件作为标准输入,以filename2文件作为标准输出 |
|
command < filename |
把command命令以filename文件作为标准输入 |
下面是在命令中使用文件重定向的例子。
从主菜单中打开一个终端。
在终端中输入下面的命令,查看当前的文件夹,把结果保存到文件a.txt中。
按“Enter”键以后,命令执行没有显示结果。在终端中输入“vim a.txt”命令,可以发现文件a.txt中有上一命令的文件列表。
将上一步骤输出的结果作为命令的输入。在终端中输入下面的命令。
按“Enter”键执行命令。这时read命令会从文件a.txt中读取一个字符串赋值给A。显示这个变量,输入“echo $A”命令,然后按“Enter”键。这是会显示文件a.txt中的第一个字符串,也就是当前用户目录下的第一个文件名,结果如下所示。
输入和输出都是文件。例如可以用下面的命令,将文件a.txt中的所有小写字母转换成大写字母,然后保存到文件b.txt中。
tr “[a-z]” “[A-Z]” <a.txt >b.txt |
按“Enter”键执行这个命令。然后输入“vim b.txt”命令,查看文件b.txt中的内容,可以发现文件中所有的字母都是大写。
在VIM中输入“:q”命令,退出VIM。