1:标准输入输出。
设备 | 设备文件名 | 文件描述符 | 类型 |
键盘 | /dev/stdin | 0 | 标准输入 |
显示器 | /dev/stdout | 1 | 标准输出 |
显示器 | /dev/stderr | 2 | 标准错误输出 |
2:输出重定向(意思就是本来应该输出到显示器,现在输出到一个文件里面):目的是方便管理,但是这些命令必须有输出才行
类型 | 符号 | 作用 |
---|---|---|
标准输出重定向 | 命令 > 文件 | 已覆盖的方式,把命令的正确输出,输出到指定的文件或设备当中 |
命令 >> 文件 | 以追加的方式,把命令的正确输出,输出到指定的文件或设备当中 | |
标准错误输出重定向 | 错误命令 2> 文件 | 已覆盖的方式,把命令的错误输出,输出到指定的文件或设备当中 |
错误命令 2>> 文件(2和>号之间不能有空格) | 以追加的方式,把命令的错误输出,输出到指定的文件或设备当中。 |
然后在使用ls > abc
会发现新的会覆盖旧的。这就是追加和覆盖的区别。
正确输出和错误输出同时保存 | 命令 > 文件 2>&1 | 已覆盖的方式,把正确输出和错误输出都保存在同一个文件当中 |
命令 >> 文件 2>&1 | 已追加的方式,把正确输出和错误输出都保存在同一个文件当中 | |
命令 &> 文件 | 已覆盖的方式,把正确输出和错误输出都保存在同一个文件当中 | |
命令 &>> 文件 | 已追加的方式,把正确输出和错误输出都保存在同一个文件当中 | |
命令 >> 文件1 2>>文件2 | 把正确的输出追加到文件1中,把错误的输出追加到文件2中。 |
3:输入重定向
wc [选项] [文件名]
选项:-c 统计字节数
-w 统计单词数
-l 统计行数
输入以后要使用ctrl+d表示的是输入了4行4个单词,24个字符(包含回车符)。
wc < 文件名
wc << 字符(在次出现相同的字符结束)