理解什么输入输出的定义
1)字符设备 字符设备就是显示字符到屏幕上的设备文件
2)stdin 标准输入 编号为0 键盘 鼠标 打字机
3)stdout 标准正确输出 标号为1
4)stderr 标准错误输出 标号为2
1:输出 >
1): > find /etc -name passwd > westos.out ##重定向正确输出 (在普通用户中实现)
将正确的代码输出到文件中,我们所看到的都是我们想显示的错误的代码
查看文件的里的正确内容:
2):2> find /etc -name passwd 2> westos.out ##重定向错误输出
我们把错误的输出写入到文件中:我们所能看到的文件就是正确的文件
查看了文件的内容,内容里的文件我们可以看到的是错误的输出。
3):&> find /etc -name passwd &> westos.out ##重定向所有输出
将所有的内容进行写入到文件里边:因为所有的输出都写入了文件那么我们就在命令行里什么也看不到。
查看文件的内容:我们可以看到所有的错误输出还有所有的正确输出。
在实验中,所有的写入文件的内容,我们每一次都是你一样的,但是我们所有的显示结果都是只有当前命令的文件,那么久说明了一点,重向输出>中他写入文件是进行覆盖的。
因为输出是进行覆盖的那么,想要不进行覆盖我们可以进行追加 >>
1)>>find /etc -name passwd >> westos.out ##追加正确输出
将正确的追加到文件里,看到的所有都是错误的输出。
查看文件里的内容:
2)2>>find /etc -name passwd 2>> westos.out ##追加错误输出
查看文件的内容:
如果光进行输出时候我们只能看到错误的信息,如果追加的话那么,正确的信息是不会被覆盖的。
3)&>>find /etc -name passwd &>> westos.out ##追加所有输出
管道: | (个人对管道的理解就是将目前在显示例输出的内容转道理其他的地方)
将错误的文件输入到file里,然后将错误的文件放到file1 (管道只支持传输正确的输出,tee是将目前的输出复制到指定的位置)
管道在一条命令行中是可以进行对此使用的:find /etc -name passwd 2>&1 | tee file2 | wc -l (将错误的输出放入到正确的输出中,将说有的输出然后复制到file2中,然后统计说有输出的行数)
输入:< <<q
外界传递到程序中的信息
1)< #输入重定向 tr 'a-z' 'A-Z' < test ##把test文件中的内容定向到tr程序中
将文件中小写字母转换成大写字母输出:
2)<< 多行录入 tr 'a-z' 'A-Z' <<
在非交互模式中写入想要的内容(脚本模式)
EOF是可以更改为任何字符的但是前后必须一致 将I LOVE 录入到文件duanduan.txt中 然后对文件进行查看
Linux中的命令行获得帮助:
1)whatis : whatis rm
查看命令的基本用途
查看过程中出现
rm: nothing appropriate.
1.表示要查看内容没有帮助
2.系统帮助数据未更新用mandb命令更
2)--help :rm --help
[OPTION] :表示使用命令是可以进行加参数的 后边有...表示参数是可以不唯一的
FILE :表示文件 ...表示文件也是不唯一的,可以同时命令多个文件
<> :必须在命令执行时加入的元素
3)man :man rm
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的最前