猛扑
我在确定应该使用什么方面遇到一些困难?
我所有的脚本都使用“ >> / dev / stderr”
在bash提示下,如果我尝试:
echo test >>/dev/stderr
works
echo test >> /dev/stderr
works
echo test >/dev/stderr
works
echo test > /dev/stderr
works
echo test >>&2
失败!
echo test >> &2
失败!
echo test >&2
作品
echo test > &2
失败!
我愿意将所有脚本更改为>&2
。
它对ssh似乎也有很大的影响(在之后su SomeUser
),在ssh >>/dev/stderr
根本不起作用(权限被拒绝),只会>&2
起作用。
su
问题发生后,才更新问题
su -c 'some command'
,该命令由/bin/sh
而不是来运行bash
,因此bash特定的行为(例如/dev/stderr
在不可用时进行重定向目的模拟)不能保证存在。