文章目录
- 1.理解什么是输入输出的定义
- 2.如何管理输入
- 3.如何管理输出
- 4.命令行获得帮助
1.理解什么是输入输出的定义
(1)字符设备
字符设备就是显示字符到屏幕上的设备文件
(2)stdin
标准输入
编号为0
键盘 鼠标 打字机
(3)stdout
标准正确输出
标号为1
(4)stderr
标准错误输出
标号为2
2.如何管理输入
外界传递到程序中的信息
(1) <
输入重定向(用来解决命令或者程序不识别后面跟的字符文件)
tr 'a-z' 'A-Z' < test把test文件中的内容定向到tr程序中
(2) <<
多行录入(可以使用在sh命令中,编写脚本的同时提高效率)
tr 'a-z' 'A-Z' <<EOF(字符任意)
test此处的test不能表示为文件名称只表示test字符
test1
EOF (当首字母再次出现表示录入结束)
3 .如何管理系统输出
(1) 输出重定向
> find /etc -name passwd > file 重定向正确输出
2> find /etc -name passwd 2> file1 重定向错误输出
&> find /etc -name passwd &> file.all 重定向所有输出
注意:重定向管理输出后会覆盖原文件内容
(2) 追加
>> find /etc -name passwd >> westos.out追加正确输出
2>> find /etc -name passwd 2>> westos.out追加错误输出
&>> find /etc -name passwd &>> westos.out追加所有输出
注意:追加和重定向功能类似,但是不会覆盖原文件内容
(3) 管道 “|”把前一条命令的输出变成输入传递到下一条命令进行操作
注意:
*管道只处理正确输出
*2>&1把编号为2的输入转换到编号为1的输出中
*tee 复制输出到指定位置
*管道在一条命令中可以使用多次
4.命令行获得帮助
whatis rm查看命令的基本用途
查看过程中出现
rm: nothing appropriate.
1.表示要查看内容没有帮助
2.系统帮助数据未更新用mandb命令更新
"注意:当执行whatis命令出现 nothing appropriate 时大多数情况是因为"
"系统的帮助数据库未更新,如何解决此问题,需要在root用户下执行mandb"
mandbrm --help查看命令的基本用法
[] 内容可加可不加
... 内容个数任意
<> 必须在命令执行时加入的元素
man rm
命令用法详解 man是manual的缩写
man -k passwd passwd关键字有多少级别的man
man的级别
1 命令
2 系统调用
3 函数库调用
4 特殊文件(设备文件等)
5 文件
6 游戏
7 特殊的包
8 系统管理命令
9 内核信息规则
man rm 进入到rm命令的帮助
q 退出
/关键字
搜索关键字,n 向下匹配, N 向上匹配
G 快速移动到man的最后
g 表示快速移动到man的最前
总结
本文主要介绍了linux重定向的原理以及一些基本命令,并且详细地分析了 > < 的使用细节以及一些注意点。希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。