输出处理
标准文件描述符#
Standard File Descriptors。
名称 | 编号 | 说明 |
---|
STDIN | 0 | 标准输入 |
STDOUT | 1 | 标准输出 |
STDERR | 2 | 标准错误 |
标准输入#
命令 cat
默认从标准输入读取内容,如果直接运行 cat
而不指定文件名,它会等待用户输入。
重定向使用 <
。
标准输出#
默认是终端或屏幕。
重定向使用 >
或 1>
。
标准错误#
默认是终端或屏幕。
重定向使用 2>
。
使用 &>
可以同时重定向标准输出和错误输出。
EXEC 命令#
在命令行中使用#
Shell 进程会被新命令的进程取代,执行完后不会返回到原来的 Shell 中。
在脚本中使用#
脚本进程会被 date
命令替代,echo
不会执行。
文件描述符重定向#
用于修改文件描述符时,不会替换当前进程,只会影响后续命令的输入输出。
关闭文件描述符#
重定向到 &-
即可关闭。关闭之后,不能再写数据。
/dev/null#
空设备,位桶。
把标准输出和标准错误重定向到空设备。
MKTEMP 命令#
根据文件名模板,创建临时文件。
命令会把 X 代替为随机字符,模板最少为 6 个 X。
创建文件#
该命令创建的文件只有 Owner 有权限。
创建目录#
使用 /tmp 目录#
使用 -t
选项会在 /tmp 目录创建文件。
TEE 命令#
同时把数据重定向到标准输出和文件。
屏幕和文件都有同一份数据。