管道pipe:
管道是linux系统提供给进程通信的一种方式,它的本质是一个缓冲区,可以想象成一个管道,A进程从管道一端输入数据,B进程在另一端接收数据,当管道缓存满的时候阻塞A进程,直到有进程将管道数据读出,此时唤醒A进程。
管道的缓存容量是系统规定的,在终端下输入:ulimit -a 如下图pipe size即为管道容量。
标准输出/错误:
程序运行过程中输出到屏幕的程序运行信息就是标准输出,相应的程序输出的错误信息就是标准错误输出,重定向('>')的时候默认重定向标准输出,对于标准错误该怎么定向呢?他们之间的区别用简单的例子区别:
执行ls命令成功,得到以下输出,即标准输出