我使用以下命令设置了环境变量/etc/profile
:
export VAR=/home/userhome
然后如果我这样做echo $VAR
表明/home/userhome
但是,当我将对该变量的引用放入/etc/init.d/servicename
文件中时,它找不到此变量。当我service servicename status
使用/etc/init.d/servicename
以下内容运行文件时:
case "$1" in
status)
cd $VAR/dir
;;
esac
它说 /dir: No such file or directory
但是如果我跑步/etc/init.d/servicename status
而不是service servicename status
如何使UNIX服务查看环境变量?
rc
直接调用System 5 脚本在systemd操作系统上也不会以这种方式进行操作,因为该脚本的所有调用都被systemctl
隐藏的钩子转换为。