怎么在.profile里判断当前是不是在X下?
发表于 : 2008-06-03 10:29
我的.profile文件里有一些代码负责启动fcitx,但是当我从公司ssh到家里的时候,因为是在cli下,这段脚本就会报错,说fcitx只能在X下启动。
怎么能判断.profile被执行的时候在不在X下?
怎么能判断.profile被执行的时候在不在X下?
学习wkt 写了:在X下运行的bash 变量TERM为xterm 否则为linux(这是实践得来的)
自己实验了一下确实是这样,可是为什么你在判断的时候要加一个“cx”在前面?wkt 写了:在X下运行的bash 变量TERM为xterm 否则为linux(这是实践得来的)
&& [ "X\$LANG" != "XC" ]其实不需要我忘了拿掉。不好意思
谢谢你的回复,但是希望能给点解释,我不想只会用但是不懂……eexpress 写了:if [ -z “$DISPLAY” ] && [ $(tty) = /dev/tty1 ]; […]
还一种
此法不可,因为你并非总是从控制台终端上登录。从远程登录时,term是远程软件的名称。wkt 写了:在X下运行的bash 变量TERM为xterm 否则为linux(这是实践得来的)
&& [ "X\$LANG" != "XC" ]其实不需要我忘了拿掉。不好意思
恩,我也发现我的实验有错误了……poet 写了:此法不可,因为你并非总是从控制台终端上登录。从远程登录时,term是远程软件的名称。wkt 写了:在X下运行的bash 变量TERM为xterm 否则为linux(这是实践得来的)
&& [ "X\$LANG" != "XC" ]其实不需要我忘了拿掉。不好意思
另外,启动screen 后,term为screen,不论是文本还是x下都是如此。
那我就帮不了你了?xell 写了:恩,我也发现我的实验有错误了……poet 写了:此法不可,因为你并非总是从控制台终端上登录。从远程登录时,term是远程软件的名称。wkt 写了:在X下运行的bash 变量TERM为xterm 否则为linux(这是实践得来的)
&& [ "X\$LANG" != "XC" ]其实不需要我忘了拿掉。不好意思
另外,启动screen 后,term为screen,不论是文本还是x下都是如此。
我在公司,系统为ubuntu 7.10;eexpress 写了:其实我会喜欢用
tty|grep tty && xxxx
tty - print the file name of the terminal connected to standard input
&& 后面是你需要执行的命令。就是tty|grep tty为真的时候。