管道和重定向
一般如果是命令间传递参数,建议用管道,如果处理输出结果需要重定向到文件,建议用重定向输出。
管道
- 如tar命令,在命令行界面一敲,一闪而过去了,不能往回翻页查看。这时,管道就起到作用了。
- 将一个命令的输出传送给另一个命令,
tar --help |more
退出按q。
重定向
> 输出导向
>> 输出导向
1> 是以覆盖的方法将正确的数据输出到指定的文件或设备上
2> 是以覆盖的方法将错误的数据输出到指定的文件或设备上
1>> 是以累加的方法将正确的数据输出到指定的文件或设备上
2>> 是以累加的方法将错误的数据输出到指定的文件或设备上
< 输入导向
<< 输入导向
ls
ls > 4.txt
cat 4.txt
ls >>4.txt
cat 4.txt
1,标准输入的控制
语法:命令< 文件将文件做为命令的输入。
例如:
mail -s “mail test” test@ahlinux.com < file1
将文件file1 当做信件的内容,主题名称为mail test,送给收信人。
2,标准输出的控制
语法:命令> 文件将命令的执行结果送至指定的文件中。
例如:
ls -l > list
将执行“ls -l” 命令的结果写入文件list 中。
语法:命令>! 文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。
例如:
ls -lg >! list
将执行“ls - lg” 命令的结果覆盖写入文件list 中。
语法:命令>& 文件将命令执行时屏幕上所产生的任何信息写入指定的文件中。
例如:
cc file1.c >& error
将编译file1.c 文件时所产生的任何信息写入文件error 中。
语法:命令》 文件将命令执行的结果附加到指定的文件中。
例如:
ls - lag 》 list
将执行“ls - lag” 命令的结果附加到文件list 中。
语法:命令》& 文件将命令执行时屏幕上所产生的任何信息附加到指定的文件中。
例如:
cc file2.c 》& error
将编译file2.c 文件时屏幕所产生的任何信息附加到文件error 中。
重定向的百度百科:
作者:大数据和人工智能躺过的坑
出处:http://www.cnblogs.com/zlslch/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!