tput:未知终端

10 aix

我在AIX-6.1上,我正在尝试在我的$ PS1中使用tput.我已经确认我甚至无法从命令行运行tput.以下是我的会议:

# tput
unknown terminal "xterm"
# echo $TERM
xterm
# tput -T ansi
unknown terminal "ansi"
Run Code Online (Sandbox Code Playgroud)

事实上, ...

# ls /usr/lib/terminfo/x
x1700  xl83        xterm+pcc3  xterm+pcfkeys   xterm-88color  xterm-hp     xterm-old  xterm-vi
x1720  xtalk       xterm+pcf0  xterm+pcfn      xterm-8bit     xterm-ic     xterm-r5   xterm-vt220
x1750  xterm       xterm+pcf1  xterm-16color   xterm-basic    xterm-mono   xterm-r6   xterm-vt52
x820   xterm+pcc0  xterm+pcf2  xterm-24        xterm-bold     xterm-new    xterm-rep  xterm-xfree86
xdku   xterm+pcc1  xterm+pcf3  xterm-256color  xterm-boldso   xterm-noapp  xterm-sco  xterm-xmc
xitex  xterm+pcc2  xterm+pcfN  xterm-65        xterm-color    xterm-nrc    xterm-sun  xterms
# ls /usr/lib/terminfo/x | wc -l
       48
# for term in $(ls /usr/lib/terminfo/x) ; do tput -T $term ; done 2>&1 | grep 'unknown terminal' | wc -l
      48
# for term in $(ls /usr/lib/terminfo/x) ; do TERM=$term tput ; done 2>&1 | grep 'unknown terminal' | wc -l
  48
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?提前致谢.

Enf*_*ors 12

你的TERMINFO变量是否设置好?没有它,我相信系统将找不到你的terminfo文件.或者它设置不正确?

如果你正在运行sh,ksh,bash或类似的,请尝试:

export TERMINFO=/usr/lib/terminfo

如果你不确定你正在使用什么shell(我很确定你这样做,但其他人也可能会读到这个),输入:

echo $SHELL

如果您使用的是csh,tcsh或类似的,那么您应该输入:

setenv TERMINFO /usr/lib/terminfo

之后,再次尝试运行tput.