您的位置:首页 > 运维架构 > Linux

login之后环境变量“COLUMNS”的值为何为空(centos6.5)

2016-11-16 15:17 120 查看
上图为/root/.bashrc,注意红框中代码,登陆之后再后台每隔一秒输出一次COLUMNS的值

上图为登陆之后屏幕输出,可以看到COLUMNS的值为空,此时while循环为后台运行

当while循环放到前台运行的时候:

可以看到第一次获取COLUMNS的值任然为空,直到第二次循环,COLUMNS的值突然正常获取并显示

猜想:1,login 成功之后,在执行完/root/.bashrc之后并没有完成全部环境变量的初始化,所以COLUMNS值为空,这一点可以从第二次登陆结果得到验证,第二次登陆后首次并不能获取COLUMNS的值,直到1s之后再次获取成功,COLUMNS的值在这1s内完成了初始化。

2,后台运行的程序一直无法正确获取COLUMNS的值,后来又试了一下,直接在终端里敲入命令,发现在前台运行的时候拉动边框改变终端界面大小的时候,时间的位置会随之发生变化,说明变量COLUMNS是实时变化的,而当后台运行的时候,COLUMNS并没有随着边框的变化而变化,说明后台运行的时候变量COLUMNS的值任然保持在前台的数据没有发生变化,这一点应该对所有的环境变量都成立,待验证
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos login COLUMNS