在脚本中,错误通常使用传送到文件描述符2 &2
,即:
echo "error" >&2
有时/dev/stderr
代替使用:
echo "error" > /dev/stderr
看一下/dev/stderr
,我发现它只是到的符号链接/proc/self/fd/2
,而这又是到/dev/pts/5
(在我当前的终端上)的符号链接。
似乎有点复杂。这背后有逻辑吗?
是使用/dev/stderr
和&2
等价吗?
是那些比其他的首选吗?
>2
或的用法>&2
吗?
echo "error" >2
创建一个具有名称2
和内容的文件error
。