博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
菜鸟学Linux 第012篇笔记 Linux I/O重定向、管道
阅读量:6148 次
发布时间:2019-06-21

本文共 1645 字,大约阅读时间需要 5 分钟。

菜鸟学Linux 第012篇笔记 Linux I/O重定向

计算机五大部件

运算器、控制器:cpu

存储器:RAM

输入/输出设备

程序=指令+数据

控制器:读取指令

运算器:做数据运算

存储器:做数据存储

相互运作原理(仅做理解)

控制器读取指令,并在指令控制下告诉运算器去哪里取数据并做运算,运算结果再由控制器

保存到存储器

地址总线:用于做内存寻址

数据总线:传输数据

控制总线:控制指令

物理上总线可以利用,一根总线可以实现以上三种功能

寄存器:Cpu内部的一个暂时存储器

I/O

input 设备

output设备

系统设定

默认输出设备:标准输出STDOUT 文件描述符:1

默认输入设备:标准输入STDIN 文件描述符:0

标准错误输出:STDERR 文件描述符:2

标准输入:键盘keyboard

标准输出和错误输出:显示器screen

I/O 重定向(输入输出重定向)

linux重定向符号

覆盖输出>

追加输出>>

输入<

结束标记<<EOF END

错误输出2>  和 2>>

标准和错误输出 &> 不支持覆盖输出

e.g.

ls /etc > /tmp/etc.out 将本应该显示在屏幕上的信息

重定向定入到/tmp/etc.out

ls /etc &> /tmp/etc.out

ls /etc > /tmp/etc.out 2> /tmp/etc

cat >> /tme/home.out <<EOF  将输入的字符输出到home.out文件

set -C 禁止对已经存在文件使用覆盖重定向

强制覆盖输出,由使用>|

set +C 关闭上述功能

管道:前一个命令的输出做为后一个命令的输入

命令1|命令2|命令3

e.g. cut -d: -f1 /etc/passwd | sort | tr 'a-z' 'A-Z'

tee (read from standard input and write to standard output and files)

同时输出到标准输出,同时也输出到文件

e.g. echo "hello, world." | tee /tmp/hello.out

wc (print the number of newlines, words, and bytes in files)

e.g. wc -l /etc/shadow | cut -d' ' -f1 显示一个文件的行数

小练习 

1、统计/usr/bin目录下的文件个数;

2、取出当前系统上所有用户的shell,要求每种shell只显示一次,并且按顺序显示;

3、思考:如何显示/var/log目录下每个文件的内容类型?

4、取出/etc/inittab文件的第6行;

5、取出/etc/passwd文件中倒数第9个用户的用户名和shell,显示到屏幕上并保存至/tmp/users文件中;

6、显示/etc目录下所有以pa开头的文件,并统计其个数;

7、不使用文件编辑器,将alias cls=clear 一行内容添加至当前用户的./bashrc文件中;

KEY

1、ls /usr/bin | wc -l

2、cut -d: -f7 | sort -u

3、file `ls /var/log` 需要先切换到/var/log目录下

4、cat /etc/inittab | head -6 |tail -1

5、cat /etc/passwd | tail -9 | head -1 | cut -d: -f1,7 | tee /tmp/users

6、ls -d /etc/pa* | wc -l

7、echo "alias cls=clear" >> /user1/.bashrc

本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1860628如需转载请自行联系原作者
Winthcloud
你可能感兴趣的文章
R 操作矩阵和计算SVD的基本操作记录
查看>>
Pointer 指针
查看>>
adb 功能大全
查看>>
Ubuntu Linux系统环境变量配置文件【转】
查看>>
vs2015如何设置类或函数前不显示引用的数量
查看>>
Linux下比较常用的svn命令
查看>>
bootstrap模态框input不能获取焦点并编辑【转】
查看>>
iphone three20 How to Start Three20 Photo Viewer in Thumbnail view?
查看>>
python 使用pymssql连接sql server数据库
查看>>
VC Windows 服务开发(转)
查看>>
工厂方法模式【设计模式学习-05】
查看>>
修改作业执行时间
查看>>
gsoap 使用
查看>>
HTML5移动开发即学即用(双色)
查看>>
Flume日志收集
查看>>
经典.net面试题
查看>>
为什么我没有拔出钥匙 ——开锁引发的程序bug解决方案的思考
查看>>
【玩转Golang】beego下实现martini中的透明式静态文件服务(static folder)效果。
查看>>
qt creator中使用qwt插件
查看>>
WebSocket实战
查看>>