临时重定向

  如果想要故意在脚本中生成错误消息,可以将单个输出行重定向到STDEER,需要做的只是使用输出重定向到STDEER文件描述符时,必须在文件描述符前面加上&号

echo "This is an error message" >&2

该行在脚本的STDEER文件描述指向的地方而不是普通的STDOUT上显示以上文本,

范例,文件名为: sh10.sh 

#!/bin/bash
# testing STDERR message

echo "This is an error" >&2
echo "This is normal output"

如果像往常一样运行脚本,并没有什么不同 sh sh10.sh 

输出为:

This is an error
This is normal output

记住,默认情况下,Linux将STDOUT输出重定向到STDOUT,但是如果运行脚本时重定向STDERR,任何使用脚本定向到STDERR的文本将被重定向:

运行 sh sh10.sh 2> test 

这时就只输出

This is normal output

然后查看test里面的内容 cat test 

输出:

This is an error
原文地址:https://www.cnblogs.com/jacson/p/4791308.html