Linux-命令学习
1.文件描述符是一个与打开的文件或数据流相关的整数。
文件描述符0、1、2是系统预留的。
0 ---- stdin(标准输入)
1 ---- stdout(标准输出)
2 ---- stderr(标准错误)
文件描述符的使用:
">": 清空文件后输出到文件
">>": 追加输出到指定文件
"<": 重定向标准输入
"|": 管道符, 把前面内容的标准输出作为后面内容的标准输入
ls -al > /var/a.txt 等同于 ls -al 1 > /var/a.txt
ls -al & > /dev/null 等同于 ls -al > /dev/null 2 > &1
2.减号的作用
1.ps -ef :代表参数
2.cd -: 代表上次所在目录
3.tar -czf -| tar -xzf -: 视情况而定, 代表标准输入/标准输出
3.tee命令
把数据一份重定向到标准输出, 一份重定向到指定文件
4.xargs
我们可以通过管道符把一个命令的标准输出重定向到另一个命令的标准输入。例如 cat /etc/passwd | grep "root"
但是有些命令只能以命令行的方式接收数据, 而无法通过stdin接收输入流; 这时候xargs命令就有用了, 使用xargs可以将标准输入转为特定命令的命令行参数。把stdin接收到的数据重新格式化, 再将其作为参数提供给其他命令。
ls |cat -n #只是输出文件名
ls |xargs cat -n #把文件名当参数给cat