bash中的“ 1>&2”是什么意思?

beg*_*ner 6 bash

在bash脚本中“ 1>&2”是什么意思?

例如,bash脚本的以下行做什么?

echo "$1 is not a directory!" 1>&2
Run Code Online (Sandbox Code Playgroud)

我使用的是Mac OSX。我的bash脚本是:

if [ ! -d $1 ]; then
    echo "$1 is not a directory" 1>&2
    exit 1
fi
Run Code Online (Sandbox Code Playgroud)

Col*_*ica 8

它将消息输出到 stderr。“1>&2”表示将标准输出重定向到标准错误。http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html