管道符"|":前一个命令的输出,作为后一个命令的输入
命令1 | 命令2 | 命令3 | ... # 输出"hello,world."并将小写转换为大写 [root@localhost ~]# echo "hello,world." | tr 'a-z' 'A-Z' HELLO,WORLD. # 显示passwd文件中按:分割的每行第一个部分并排序并将小写转换为大写 [root@localhost ~]# cut -d: -f1 /etc/passwd | sort | tr 'a-z' 'A-Z' ADM APACHE BIN DAEMON DBUS FEDORA
简单的解释就是捕捉一个文件, 命令, 程序, 脚本, 或者甚至是脚本中的代码块的输出, 然后将这些输出作为输入发送到另一个文件, 命令, 程序, 或脚本中。
执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),通常对应终端的键盘;标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件都对应终端的屏幕。
进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。
习惯上,标准输入(standard input)的文件描述符是 0,标准输出(standard output)是 1,标准错误(standard error)是 2。
其中2>&1中的数字代表重定向文件描述符,表示重定向 stderr 到 stdout 。
n<&- #关闭输入文件描述符n. 0<&- <&- #关闭stdin. n>&- #关闭输出文件描述符n. 1>&- >&- #关闭stdout.
set -C:禁止对已经存在文件使用覆盖重定向: 强制覆盖输出,则使用 >| set +C:关闭上述功能
如对本文有疑问, 点击进行留言回复!!
linux下文本编辑器vim的使用方法(复制、粘贴、替换、行号、撤销、多文件操作)
网友评论