管道和重定向

管道和重定向:> < >> << 
运算器、控制器: CPU

存储器:RAM
输入设备/输出设备

程序:指令和数据

控制器:指令
运算器:
存储器:

地址总线:内存寻址
数据总线:传输数据
控制总结:控制指令

寄存器:CPU暂时存储器

I/O: 硬盘,

程序

INPUT设备:

OUTPUT设备

系统设定
默认输出设备:标准输出,STDOUT, 1
默认输入设备:标准输入, STDIN, 0
标准错误输出:STDERR, 2

标准输入:键盘
标准输出和错误输出:显示器

I/O重定向:

Linux:

>: 覆盖输出
>>:追加输出

set -C: 禁止对已经存在文件使用覆盖重定向;
强制覆盖输出,则使用 >|
set +C: 关闭上述功能

2>: 重定向错误输出
2>>: 追加方式

&>: 重定向标准输出或错误输出至同一个文件

<:输入重定向
<<:Here Document

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

命令1 | 命令2 | 命令3 | ...

来自网络:

[chengmo@centos5 shell]# cat > catfile 
testing 
cat file test
#这里按下 [ctrl]+d 离开 
#从标准输入【键盘】获得数据,然后输出给catfile文件
 
[chengmo@centos5 shell]$ cat>catfile <test.sh
#cat 从test.sh 获得输入数据,然后输出给文件catfile
 
 
[chengmo@centos5 shell]$ cat>catfile <<eof
test a file
test!
eof
 
#<< 这个连续两个小符号, 他代表的是『结束的输入字符』的意思。这样当空行输入eof字符,输入自动结束,不用ctrl+D

标签: linux