一个终端机是一个萤幕与一个键盘的组合,其型别有vt100, vt102, vt220,sun, hp, ansi 等。基本上这些型别就是不同公司的不同产品型号,他们之间的差异在於控制游标的方法不同,按键时键盘产生的键盘代码不同,以及是否有彩色能力等。由於设计先天不良,UNIX无法自动侦测终端机的型别,必须以人工的方式告知。告知的方法就是设定一个环境变数TERM。UNIX里面需要控制萤幕的程式都会参考此变数。设定此变数的方法如下:
1. 在csh, tcsh下用: % set term = vt100这里要说明的是为什麽刚刚说要设定的变数名是大写(TERM),而这里却是小写;另外一个问题是csh、tcsh中,set指令是用来设定临时变数而已,另有一个专门设定环境变数的指令叫setenv,为什麽不用setenv?
答案是 csh、tcsh为了使用者的方便,只要'term'这一个临时变数被设了值,csh 就自动更新TERM这个环境变数的值。
2. 在sh,bash,ksh,zsh中要下两个命令:$ TERM=vt100、$ export TERM其中export的意思为,把'TERM'这个暂时变数转成环境变数
<UNIX小字典——环境变数与变数>
在UNIX里面,这是一个不讲还好、越讲越搞不清楚的观念。简单的说,所谓的<环境变数>就是此变数能够告诉所有的程式使用者目前所处的环境,而变数则不能,因为只有Shell 能看到变数,而环境变数是所有的程式都能够看到的。例如所有的程式都需要知道TERM这个变数,所以它是一个环境变数。在sh下面的export命令可以想作:让大家都能看到这个变数。
阅读(4881) | 评论(0) | 转发(0) |