我的回stdout是终端的标准输出。
我的分析:在Linux中执行命令,一般会打开三个标准文件。包括:标准输入文件stdin,标准输出文件stdout和标准错误输出的文件stderr。
std代表标准的:standard,input/output表示输入/输出。err代表error错误。
标准输入文件,一般是stdin,对应的终端是键盘。
标准输出文件stdout和标准错误输出文件stderr,对应的终端是屏幕。
一般进程从标准输入文件中得到输入数据,比如参数。把正常输出数据输出到标准输出文件stdout,把错误信息送到标准错误输出文件中。
Linux中一般用0表示stdin标准输入,用1表示stdout标准输出,用2表示stderr标准错误输出。
一般在默认的情况下,标准输出stdout是行缓冲的,是把输出放到一个buffer里面,只有换行的时候,才会输出到屏幕。
一般标准错误输出stderr是无缓冲的,直接输出。