BASH 脚本回显文本和命令
BASH script echo text and a command
我知道这是非常蹩脚的,但是......我把我的头发拉出来了。
基本上我有这个代码:
getDisplayName(){
echo Display Name: $(/opt/vc/bin/tvservice -n)
}
它returns这个:
[E] No device present
Display Name:
我希望它是:
Display Name: [E] No Device Present
我错过了什么?
TIA 罗恩
看起来很像来自 /opt/vc/bin/tvservice
的错误消息进入标准错误流(不是标准输出),所以它没有被 $()
捕获。尝试使用 2&>1
2>&1
重定向到标准输出
getDisplayName(){
echo Display Name: $(/opt/vc/bin/tvservice -n 2>&1)
}
我知道这是非常蹩脚的,但是......我把我的头发拉出来了。
基本上我有这个代码:
getDisplayName(){
echo Display Name: $(/opt/vc/bin/tvservice -n)
}
它returns这个:
[E] No device present
Display Name:
我希望它是:
Display Name: [E] No Device Present
我错过了什么?
TIA 罗恩
看起来很像来自 /opt/vc/bin/tvservice
的错误消息进入标准错误流(不是标准输出),所以它没有被 $()
捕获。尝试使用 2&>1
2>&1
getDisplayName(){
echo Display Name: $(/opt/vc/bin/tvservice -n 2>&1)
}