首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动脚本中可用的环境变量

问启动脚本中可用的环境变量
EN

Stack Overflow用户
提问于 2011-08-01 19:31:26
回答 1查看 1.9K关注 0票数 0

在Linux / Ubuntu上使用启动脚本时,是否可以访问HOME等环境变量,或者这些变量是否特定于随后加载的用户/配置?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-02 03:31:03

是也不是。一些变量特定于您的安装,其他变量则特定于运行init脚本的shell。要知道可用的最小集,一个简单的方法是:

代码语言:javascript
复制
/usr/bin/env -i /bin/sh -c set

在我的系统上(fedora 15),这最终运行bash并输出:

代码语言:javascript
复制
BASH=/bin/sh
BASHOPTS=cmdhist:extquote:force_fignore:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
BASH_CMDS=()
BASH_EXECUTION_STRING=set
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="4" [1]="2" [2]="10" [3]="1" [4]="release" [5]="i386-redhat-linux-gnu")
BASH_VERSION='4.2.10(1)-release'
DIRSTACK=()
EUID=xxx
GROUPS=()
HOSTNAME=xxx
HOSTTYPE=i386
IFS=''
MACHTYPE=i386-redhat-linux-gnu
OPTERR=1
OPTIND=1
OSTYPE=linux-gnu
PATH=/usr/local/bin:/bin:/usr/bin
POSIXLY_CORRECT=y
PPID=xxx
PS4='+ '
PWD=/home/xxx
SHELL=/bin/zsh
SHELLOPTS=braceexpand:hashall:interactive-comments:posix
SHLVL=1
TERM=dumb
UID=xxx
_=/bin/sh

在Ubuntu中,/bin/sh是一个指向dash的符号链接,输出将更类似于:

代码语言:javascript
复制
IFS=''
LINENO='1'
OPTIND='1'
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
PPID='xxx'
PS1='$ '
PS2='> '
PS4='+ '
PWD='/home/xxx'

一般来说,根不是一个好的候选者,如果您需要特定用户的主目录,请使用~username,而不是~www- $HOME、~ftp或~root。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6897779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档