我将以下内容放入 /etc/init/myjob.conf 文件中,但似乎不起作用
env PATH=$PATH:/mnt/data/src
env PYTHONPATH=$PYTHONPATH:/mnt/progs/link
是否有可能以某种方式附加到环境变量。
答案1
您不能在 upstart 脚本中附加变量,您需要使用外部文件并在脚本部分中获取它:
创建一个/etc/默认/我的作业文件内容如下:
env PATH=$PATH:/mnt/data/src
env PYTHONPATH=$PYTHONPATH:/mnt/progs/link
export PATH
export PYTHONPATH
然后在/etc/init/myjob.conf在你需要的地方获取它
script
. /etc/default/myjob
exec command
end script
虽然这看起来不必要地复杂,但实际上是正确的,因为 init 脚本文件应该在软件包版本之间更改,而 /etc/default/appname 是配置文件,默认情况下不会被覆盖
答案2
env VAR=foo
您可以按照在 upstart 配置文件中的方式添加它们:
答案3
您可以将以下内容放入 /etc/environment 文件中:
PATH="/mnt/data/src:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
PYTHONPATH="/mnt/progs/link"
当然,这种方法不会“附加”,但由于这是主要环境变量,所以没有必要,其他应用程序应该附加到它们。
答案4
导出 PATH=~/bin:"$PATH"
你应该添加这个~/.bashrc文件在每个用户会话中工作。
您应该重新启动才能看到它正常工作,或者尝试使用. .bashrc
命令而不重新启动。