我的tcsh启动脚本中有以下代码:
set _color_count = `sh -c "tput -T${TERM}-256color colors 2>/dev/null"`
if ($? == 0) then # check if it was a valid terminal type
if ($_color_count != 256) then # sanity-check
echo "Warning: Color count '$_color_count' for '${TERM}-256color' is not 256"
endif
setenv TERM "${TERM}-256color"
endif我的问题是退出状态($?)始终为零,即使tput命令由于终端类型无效而返回非零退出状态时也是如此。如果我没有捕获命令的输出,检查退出状态会很好:
sh -c "tput -T${TERM}-256color colors 2>/dev/null"我如何确定tput命令是否返回了一个非零的退出状态,因为它是在反引号中的?
发布于 2012-07-10 10:26:42
https://stackoverflow.com/questions/11411346
复制相似问题