如何删除“未设置TERM环境变量”
Posted
技术标签:
【中文标题】如何删除“未设置TERM环境变量”【英文标题】:how to remove "TERM environment variable not set" 【发布时间】:2013-10-25 21:13:36 【问题描述】:我有一个脚本 runonce.sh,它通过 cron 调用另一个脚本 setup.sh。我们认为这种情况是“未设置 TERM 环境变量”的理想情况。在 runonce.sh 脚本的输出中可以看到。
现在我面临一个问题,即另一个第三个简单脚本 - upgradeAndTest.sh 在调用 setup.sh 时,那个时候也“未设置 TERM 环境变量”。在 upgradeAndTest.sh 脚本的输出中可以看到。为什么会这样..?
另外,如果我在调用脚本中将 setup.sh 的 stderr 重定向到 stdout,那么还会出现“未设置 TERM 环境变量”。显示在控制台上。
谁能帮我从调用脚本的标准输出中删除这一行..?
【问题讨论】:
【参考方案1】:通过cron
运行需要终端的程序可能会导致问题;由cron
运行时不会有终端。
如果有疑问,请确保在脚本中设置了变量,方法是添加一行:
export TERM=$TERM:-dumb
如果环境变量TERM
已经设置,这是一个空操作。如果不是,它将终端设置为具有最小功能的标准终端——这可以满足抱怨TERM
未设置的程序。
【讨论】:
很好的解决方案,非常干净。谢谢!以上是关于如何删除“未设置TERM环境变量”的主要内容,如果未能解决你的问题,请参考以下文章