输入输出重定向指的是,将一些数据或命令分配到我们建立的文件中去。
输出重定向(>,>>)
输出重定向用到的通配符主要为>,用法为(输入的命令>文件),意为本将会输出在屏幕上的结果定位到了设定的文件中去。
在实验中向文件中定向了三个命令进行输出,下来来看一下三个文件中分别有什么内容。在屏幕上显示出了三个不同命令的输出结果。
那我们如果不用输出重定向,而是直接输出命令,那又是什么样子的呢?可以看到结果直接就显示在了屏幕上。
所以重定向的目的就是让本应该显示在屏幕上的信息传输到其他地方去。
除了‘>’以外‘>>’也是输出重定向的符号,那其中的区别有哪些呢。看到了吗,第一个文件中的内容被覆盖掉了,但是看第二个文件中的内容,
原来的内容还在,新内容添加在了原内容的最下面,所以’>>‘的用途是追加。
除了这两个用法外,重定向还有一些额外的用法,在计算机内正确的用1表示,错误的用2表示,所以有时候我们想将错误的信息定位出来就可以用‘2>’和’2>>’。输入命令后发现屏幕上出现了一些显示,同时打开定向完成的文件,里面的数据显示我没有权限,
所以明白了,屏幕上直接输出的是一些正确的输出,而被定向过的文件内显示的是我们需要的错误文件。(注意这条命令我切换了用户,在超级用户下不会报错。)
除此之外还有一个‘&>’,’&>>'命令,在文件中正确的输出和错误的输出都被显示出来了,所以这个文件便是和的意思,将正确和错误同时输出。
输入重定向(<,<<)
输入重定向用法为(命令<文件)意为将文件输入命令,用输入的命令对文件进行执行。比如说改变大小写,先随便建立一个文件,输入命令,将文件输入命令中。
管道命令
管道命令可以在我们要经过多次数据筛选的过程中使用,他的用法是将第一个命令的输出结果当作第二个命令的输入。但是管道命名只允许正确的输出进入。所以我们看到该命令将错误的信息打印在了屏幕上,用正确的信息输出了数字,
如果需要显示全部内容,那就需要重定向,将错误的信息定向为正确的就可以了。
排序命令
在上面我们看到了一个新的命令‘wc’,这个不是厕所的意思而是显示有多少文字、句子…的意思,我们使用man来看看wc的用法发现,主要参数有【lwmc】显示,行数,单词数,字符数和字节数。