一.过滤器命令概念:
从一个来源输入数据,然后输出到输出源里面。ls,cat命令都是过滤器。
输入输出重定向是针对过滤器命令来说的,这种命令很多。
二.输出相关
1.标准正确输出重定向符号 >例子: ls > /tmp/aaa.txt
2.标准错误输出重定向符号 2>
例子: ls /ttt 2> /tmp/aaa.txt (/目录下本身没有ttt文件)
正确和错误的输出都重定向到/tmp/findfile
例子: find / -name shrek > /tmp/findfile 2>&1
&1是前面标准输出>(也为1>)的引用,2>&1表示标准错误输出重定向到前面标准输出打开的文件/tmp/findfile
3.标准输出追加符号 >>
例子:echo aaa>>a
4.标准错误追加符号 2>>
三.输入相关
1.标准输入重定向符号 < (该命令很少用)例子:
tr "a-z" "A-Z" < /etc/passwd 将/etc/passwd文件转为大写
2.符号 <<
例子:
cat << EEE 一直等待输入,直到按ctrl+d或遇到"EEE"符号才接受输入的内容
cat > a.txt << EEE 直到遇到"EEE"符号才接受输入的内容并输出到a.txt
四.管道
1.管道符 |用途:将前面一个命令的输出作为后面一个命令的输入
例子:
ls /etc/ -l | grep '^d'| wc -l 统计/etc/目录下有多少个文件夹.
ls /etc/ -l | grep '^-'| wc -l 统计/etc/目录下有多少个文件.
ls /etc/ -l | grep '^l'| wc -l 统计/etc/目录下有多少个链接.
ls /etc/ -l | grep '^l'|tee bbb.txt| wc -l 意思为tee bbb.txt将ls /etc/ -l | grep '^l'|命令的内容复制一份
到bbb.txt里面并将ls /etc/ -l | grep '^l'|命令的内容输入到wc -l命令中
dmsg|more 分屏显示内核信息