Questions tagged «environment-variables»

对于与环境变量有关的问题,一组动态变量可能会影响正在运行的进程的行为和对资源的访问。使用此标记可解决有关环境变量的问题,或有关在运行过程行为和对资源的访问中因设置或修改变量值的影响而引起的问题的问题。

3
〜/ .profile,〜/ .bashrc,〜/ .bash_profile,〜/ .gnomerc,/ etc / bash_bashrc,/ etc / screenrc…有什么区别?
回答关于SO和askubuntu的问题,以及翻阅(和阅读)的标头,$HOME并/etc/指出了许多可用于设置环境变量的文件,包括: ~/.profile ~/.bashrc ~/.bash_profile ~/.gnomerc ~/.Rprofile /etc/bash_bashrc /etc/profile /etc/screenrc 我收集/etc/所有用户的工作文件,而其中的文件$HOME是特定于用户的。我还收集了.profile在登录.bashrc时加载的内容,而在/bin/bash执行时加载的内容。我也了解不同的程序具有不同的设置文件(例如.RprofileR)。但我希望您能澄清一下: 是*rc和*profile文件本质上的区别? 此类文件的范围是什么(例如,Linux通常使用哪些文件) 是否有层次结构(例如,.bashrc覆盖中设置的变量.settings) 此类文件有什么好的参考?对于这些文件中的选项? 关联问题 “如何在emacs-ess的R中访问bash环境变量?” “从键盘快捷方式启动应用程序与从终端启动应用程序之间有区别吗?”





9
如何在bash中仅打印定义的变量(shell和/或环境变量)
set如果不带参数调用bash内置命令,则将打印所有shell和环境变量,以及所有已定义的函数。这使得输出对于人类来说是无法使用的,并且难以实现grep。 如何使bash内置命令set仅打印变量而不打印函数? 还有其他仅打印shell变量而不显示功能的命令吗? 注意:bash区分shell变量和环境变量。在此处查看环境变量与bash中导出的环境变量之间的区别

2
sudo作为其环境的另一个用户
$ whoami admin $ sudo -S -u otheruser whoami otheruser $ sudo -S -u otheruser /bin/bash -l -c 'echo $HOME' /home/admin 为什么即使将bash作为登录shell调用也没有$HOME设置为/home/otheruser? 具体来说,/home/otheruser/.bashrc不是来源。另外,/home/otheruser/.profile也没有来源。-(/home/otheruser/.bash_profile不存在) 编辑:确切的问题实际上是https://stackoverflow.com/questions/27738224/mkvirtualenv-with-fabric-as-another-user-fails

3
如何使环境变量在shell脚本中“导出”?
我有多个Amazon EC2帐户,并希望能够$EC2_HOME使用脚本快速切换变量,例如。 我有一个这样的shell脚本设置: #!/bin/sh export EC2_HOME=/home/me/.ec2 echo $EC2_HOME 当我运行脚本时,我知道EC2_HOME已经设置好了,但是我认为使用export脚本会使变量在脚本完成后继续存在。它不会,因为运行echo $EC_HOME不会显示任何内容。 我知道这一定是非常基本的Linux脚本知识,但是我不知道。我尝试寻找相关问题时没有运气-如果这是重复的话,我深表歉意。

4
如何在$ HOME以外的目录中启动所有Shell会话?
当我在Ubuntu中打开非登录外壳程序时,我当前的工作目录是/home/user_name(我的$HOME环境变量),但是我想更改此目录,以便在启动终端时位于其他目录中。 我已经读过,当我在Ubuntu中启动终端时,会得到一个.bashrc文件。所以我加了 export HOME=/home/user_name/Documents 到我的.bashrc文件。现在,当我打开终端时,我仍然在/home/user_name目录中。 我该如何更改?

2
用envsubst只替换特定的变量
我正在尝试通过进行环境变量替换envsubst,但是我只想替换特定的变量。 从文档中,我应该能够告诉我envsubst仅替换某些变量,但我无法做到这一点。 例如,如果我有一个包含以下内容的文件: VAR_1=${VAR_1} VAR_2=${VAR_2} 我应该如何执行envsubst以便仅替换对的引用${VAR_1}?

3
如何使Unix服务查看环境变量?
我使用以下命令设置了环境变量/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服务查看环境变量?

3
在.bashrc中使用导出
我注意到自己前面.bashrc有几行export,例如 export HISTTIMEFORMAT="%b-%d %H:%M " ... export MYSQL_HISTFILE="/root/.mysql_history" 而其他人则没有 HISTSIZE=100000 我想知道如果,第一,这是正确的,而第二个规则是什么,用export在.bashrc。


4
以易于理解的方式显示PATH
我想以更易于理解的方式显示PATH环境变量。 $ echo $PATH /Users/arturo/.rvm/gems/ruby-1.9.3-p392/bin:/Users/arturo/.rvm/gems/ruby-1.9.3-p392@global/bin:/Users/arturo/.rvm/rubies/ruby-1.9.3-p392/bin:/Users/arturo/.rvm/bin:/usr/local/git/bin:/Users/arturo/.gvm/groovy/current/bin:/Users/arturo/.gvm/grails/current/bin:/Users/arturo/.gvm/griffon/current/bin:/Users/arturo/.gvm/gradle/current/bin:/Users/arturo/.gvm/lazybones/current/bin:/Users/arturo/.gvm/vertx/current/bin:/Users/arturo/.gvm/bin:/Users/arturo/.gvm/ext:/usr/local/git/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin 我在想这样的事情: $ echo $PATH | some cut and awk magic /Users/arturo/.rvm/gems/ruby-1.9.3-p392/bin /Users/arturo/.rvm/gems/ruby-1.9.3-p392@global/bin /Users/arturo/.rvm/rubies/ruby-1.9.3-p392/bin /Users/arturo/.rvm/bin ...


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.