Linux基础入门--实验12(数据流重定向)

重定向初探

>>>操作分别是将标准输出导向一个文件或追加到一个文件中。这其实就是重定向,标准输出(/dev/stdout)本身也是一个文件,我们将命令输出导向另一个文件自然也是没有任何问题的。Linux 默认提供了三个特殊设备,用于终端的显示和输出。
Linux基础入门--实验12(数据流重定向)_第1张图片
Linux基础入门--实验12(数据流重定向)_第2张图片
与管道的区别,管道默认是连接前一个命令的输出到下一个命令的输入

标准错误重定向

Linux基础入门--实验12(数据流重定向)_第3张图片
Linux基础入门--实验12(数据流重定向)_第4张图片
Linux基础入门--实验12(数据流重定向)_第5张图片
Linux基础入门--实验12(数据流重定向)_第6张图片

tee

Linux基础入门--实验12(数据流重定向)_第7张图片

永久重定向

Linux基础入门--实验12(数据流重定向)_第8张图片

创建输出文件描述符

在 Shell 中有 9 个文件描述符。上面我们使用了也是它默认提供的 0,1,2 号文件描述符。另外我们还可以使用 3-8 的文件描述符,只是它们默认没有打开而已。
Linux基础入门--实验12(数据流重定向)_第9张图片

关闭文件描述符

exec 3>&-

完全屏蔽命令的输出

重定向到/dev/null,/dev/null,或称空设备,是一个特殊的设备文件,它通常被用于丢弃不需要的输出流,或作为用于输入流的空文件,这些操作通常由重定向完成。读取它则会立即得到一个 EOF。

2016 年百度校招面试题

data1文件存放了大量命令操作,找出出现次数前3个命令次数及命令本身,输入到result文件中。

# 下载数据data1
wget http://labfile.oss.aliyuncs.com/courses/1/data1

参考答案(8-:去除各行命令前的编号和空格):
cat data1 |cut -c 8-|sort|uniq -dc|sort -rn -k1 |head -3 > /home/shiyanlou/result

参考资料

[1] 实验楼《Linux基础入门(新版)》
[2] 《鸟哥的Linux私房菜》

你可能感兴趣的:(操作系统基础篇)