当我在Linux机器上运行bash脚本时,我的日志中会出现以下错误,
注意 - 我们在脚本中设置:
exec > $log 2>&1 , ( in order to send all standard error/output to $log )
错误消息:
tput: No value for $TERM and no -T specified
为了过滤这些错误消息,我们尝试在bash脚本中设置:
export TERM=xterm
但没有帮助
挖掘后我们发现在某些情况下发生了这种情况,例如我们对远程机器执行ssh并在远程机器上运行命令VIA ssh为了避免我们在bash脚本中设置TERM = xterm,如下所示:
ssh user@$remote_machine "TERM=xterm /tmp/script.sh"
但这是非常不优雅的解决方案,因为我的脚本使用了大量的ssh和curl命令,所以在每个SSH或卷曲等上设置它是不切实际的解决方案
所以我的大问题是
如何过滤消息 - tput:$ TERM没有值,没有-T指定?
所以我们在 $ log 文件
中没有收到这些丑陋的消息答案 0 :(得分:0)
从日志记录中筛选出所有tput: No value
:
exec > >(grep -v 'tput: No value for $TERM and no -T specified' >$log) 2>&1