Questions tagged «environment-variables»

一组动态变量,可以影响正在运行的进程的行为和对资源的访问。

2
设置PATH,使其适用于所有用户,包括root / sudo
如何为服务器上的所有用户设置PATH变量中的说明?努力为所有“普通”用户设置PATH。但是,如果这样做sudo -s,则printenv PATH不会显示更新的路径。我看过例如为root设置TeX Live路径,但这对我来说似乎没有意义,也许是因为我来自Windows背景。是否有任何方法可以设置真正的系统范围的路径,以使条目绝对被系统上运行的每个进程继承?

3
如何为root设置持久性环境变量?
要创建持久性环境变量,我将脚本文件添加到/etc/profile.d目录,例如: #我的剧本 导出MY_VAR = var_value 这对于当前用户正常运行: alex @ alex-64:〜$ echo $ MY_VAR var_value 现在,我需要root用户使用相同的环境变量,但是/etc/profile.d脚本不适用于root用户: alex @ alex-64:〜$ echo $ MY_VAR var_value alex @ alex-64:〜$ sudo su root @ alex-64:/ home / alex#echo $ MY_VAR root @ alex-64:/ home / alex# 如何为根设置相同的变量?

7
如何为Android设备配置ADB访问?
我正在使用Ubuntu 12.10,并且已经安装了Android SDK,并在用户中设置了它的路径,.bashrc并且可以正常工作。 问题是我的电话要求adb必须由root用户运行才能获得权限,但是用sudo运行adb会出现以下错误: sudo:adb:找不到命令 我试图简单地使用sudo -E adb start-server,但是它不起作用。尝试将导出路径行添加到/root/.bashrc和(意识到没有帮助之后)添加到/etc/bash.bashrc。 我记得我可以在Arch Linux上进行设置,但是我想我的问题现在是连接到Ubuntu root帐户,其行为不像我期望的那样。 我不明白的是以下内容: 这些不起作用: martin@alyx:~$ sudo adb devices sudo: adb: command not found 这样(键入完整路径): martin@alyx:~$ sudo /opt/android-sdk-linux/platform-tools/adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached CM7-Blade device …

3
永久PATH变量
如何使该/media/De Soft/mongodb/binPATH变量永久化? 每个人都在说“ export PATH=$PATH:media/De\ Soft/mongodb/bin您的~/.profile,或.bashrc或.zshenv取决于您的外壳”。 我不知道什么是~/.profile或.bashrc或.zshenv。他们实际上是做什么的? 如何添加export PATH=$PATH:my/path到.profile / .bashrc / .zshenv中? 我使用默认终端的64位Ubuntu 14.04 LTS。

2
毕竟,bash中的“。”和“源”之间有区别吗?
我一直在寻找“。”之间的区别。和“源”内置命令以及一些源(例如,在本讨论中以及bash手册页中)表明它们是相同的。 但是,在环境变量出现问题之后,我进行了测试。我创建了一个testenv.sh包含以下内容的文件: #!/bin/bash echo $MY_VAR 在命令提示符下,我执行了以下操作: > chmod +x testenv.sh > MY_VAR=12345 > ./testenv.sh > source testenv.sh 12345 > MY_VAR=12345 ./testenv.sh 12345 [请注意第一种形式返回一个空字符串] 所以,这个小实验表明,有是毕竟有差别,其中的“源”命令,孩子的环境继承所有从父之一,这里的变量“” 它不是。 我是否缺少某些东西,或者这是bash的未记录/不推荐使用的功能? [GNU bash,版本4.1.5(1)-发行(x86_64-pc-linux-gnu)]

2
为什么打开终端时不提供.profile?
刚刚安装了Ubuntu 14.04.1 LTS。 根据.profile, # ~/.profile: executed by the command interpreter for login shells. # This file is not read by bash, if ~/.bash_profile or ~/.bash_login exists. 没有〜/ .bash_profile或〜/ .bash_login。 打开终端时,似乎没有源.profile。 为什么在打开终端时没有源.profile? 如果没有提供.profile,为什么会有该文件? 我如何知道/控制打开新终端时的来源? 打开新终端后,是否进行“登录”? 在哪里将$ HOME / bin添加到我的路径?.bashrc?因为.profile具有相同的代码,这会引起问题吗?


2
如何在ubuntu中为maven3永久设置环境变量PATH和M2_HOME?
我已经下载了最新的apache-maven3.zip文件并将其解压缩到以下文件夹:中 /home/gaurav/Java/maven3。 我不知道如何为Maven设置环境变量-例如PATH和M2_HOME。 我尝试了以下事情: export M2_HOME=/home/gaurav/Java/maven3 export PATH= /home/gaurav/Java/maven3/bin:${PATH} 设置完之后,我跑了mvn --version,它运行正常。 但是,下次我启动机器并键入时$M2_HOME,它没有显示路径变量的详细信息,也没有mvn --version执行。 请帮助我解决在Ubuntu中永久设置环境变量的问题。


6
export PATH = something:$ PATH是什么意思?
我是Linux的新手,将以下命令放在.profile主文件夹下文件的末尾: export PATH="~/.composer/vendor/bin:$PATH" 我从Windows有点了解环境变量及其值的问题,但是在这种情况下,我想了解此命令的作用以及它包括哪些部分: 开头的“出口”一词是什么?是否正在导出可供Bash使用的数据? 第一个PATH是什么,第二个是什么$PATH,为什么我们需要两个?

4
$ BASH_COMMAND变量有什么用?
根据Bash手册,环境变量BASH_COMMAND包含 当前正在执行或将要执行的命令,除非外壳程序由于陷阱而正在执行命令,在这种情况下,它是在陷阱发生时执行的命令。 撇开陷阱的情况,如果我理解正确,这意味着当我执行命令时,变量BASH_COMMAND包含该命令。这不是绝对清楚地表明变量是否是在执行命令后复位(也就是,只有avaialble 而命令正在运行,但不是之后),尽管有人可能会认为,既然是“命令当前正在执行或即将执行的” ,不是刚刚执行的命令。 但是让我们检查一下: $ set | grep BASH_COMMAND= $ 空的 我本来希望看到BASH_COMMAND='set | grep BASH_COMMAND='或者也许只是BASH_COMMAND='set',但是空虚使我惊讶。 让我们尝试其他方法: $ echo $BASH_COMMAND echo $BASH_COMMAND $ 嗯,这很有道理。我执行命令echo $BASH_COMMAND,因此变量BASH_COMMAND包含字符串echo $BASH_COMMAND。为什么这次这次有效,但以前却没有呢? 让我们再做set一次: $ set | grep BASH_COMMAND= BASH_COMMAND='echo $BASH_COMMAND' $ 等一下 它是在我执行该echo命令时设置的,此后并没有取消设置。但是当我set再次执行时,BASH_COMMAND 没有设置该set命令。无论我在set这里执行命令的频率如何,结果都保持不变。那么,变量是在执行echo时设置的,而在执行时设置的set吗?让我们来看看。 $ echo Hello AskUbuntu Hello AskUbuntu $ set | grep BASH_COMMAND= …

3
为什么“ A = 10 echo $ A”不打印10?
该命令: A=10 echo $A 打印一个空行。为什么不10呢?为什么就地临时环境设置不起作用? 我想知道原因和解释,而不是解决方案。 我用了 LANG=C gcc ... 强制gcc使用后备语言(英语)而不是系统语言(中文)。因此,我假设VAR=value前缀将为后面的命令设置临时环境。但是看起来我有点误会。

4
Bash自动完成环境变量[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Ask Ubuntu 的主题。 6年前关闭。 bash自动完成功能似乎不适用于11.04中的环境变量。当前行为如下所示 export SCRIPT=/home/user/script cd $SCRIPT/<tab> 导致在提示变为\之前添加反斜杠()$SCRIPT cd \$SCRIPT/ 如果cd用ls或任何其他命令代替,也会发生相同的情况 另外,如果$ SCRIPT中包含的路径中有一个可执行文件,我想运行该文件 $SCRIPT/<tab> Bash不会在文件夹内显示选项(无论环境变量中包含的路径内是单个文件还是多个文件/目录)。 换句话说,自动完成功能不适用于环境变量。

2
如何永久禁用http_proxy
当我从系统/网络中删除代理并在系统范围内应用时,在控制台中工作时仍然保留。当我跑步时: env | grep proxy 它打印: http_proxy=http://proxy.studnet.lan:8080 ftp_proxy=ftp://proxy.studnet.lan:8080 socks_proxy=socks://proxy.studnet.lan:8080 https_proxy=https://proxy.studnet.lan:8080 我可以删除它: unset http_proxy unset ftp_proxy unset socks_proxy unset https_proxy 但它不是永久的,当我重新打开终端时,将再次设置这些代理变量。 如何永久删除它们?

2
如何增加无响应程序的等待时间?
我已经安装了Ubuntu GNOME,发现我收到许多PROGRAM没有响应的消息。 我必须“强制退出”该程序或“等待”更多。 我注意到,每次我等待该程序时,该程序最终都会继续运行而不会出现问题。 因此,我认为可能有一个程序的“超时”配置被认为是无响应的,我想增加此超时。

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.