管理输入输出的符号
1.输出重定向
(1)重定向会覆盖源文件内容;
(2)对于输出重定向的实验必须在student用户下完成;root下都为正确的输出;
2.管道:
(1)管道只允许正确的输入;
(2)通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的;
查找名字为passwd的文件,有权限的是正确输出,无权限的为错误输出:
将正确输出重定向到字符设备file.out:
错误的输出到字符设备file.err:
追加:首先在文件内写入内容:
追加正确内容到字符设备file1:
追加错误内容到字符设备file2
追加所有内容到字符设备file3
管道
3.| 管道符-把前一段输出变成后一段的输入,正常只允许正确输出通过,编号为1通过,可以加 2>&1 - 将编号2转换为1全部通过;如果需要保存输出内容,需要复制一份输出,用到的命令是tee 复制输出到指定位置。
(echo输出命令,能够把内容输出到文件里而不是标准输出;wc利用wc指令我们可以计算文件的Byte数、字数、或是列数,-l行数 、-w单词数、 -m字符数、 -c字节数,计算机存储容量基本单位是字节(Byte),字符是一种符号)
在普通用户下进行操作
find /etc/ -name passwd | wc -l ##会看到结果2,因为错误的输出不会通过管道
find /etc/ -name passwd 2>&1 | wc -l ##会看到结果19,因为编号为2的错误的输出有17行被2>&1转换为编号1 加上原来的2就是总共的19
find /etc/ -name passwd 2>&1 |tee file | wc -l ##保存一份输出到file再统计行数
输入重定向:
tr ‘a-z’‘A-Z’< westos ##westos文件中内容大小写转换
单次 (tr 命令用于转换或删除文件中的字符,tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备.)
多次 格式化输入内容到文件