标签: environment-variables

Linux:环境变量存储在哪里?

如果我输入终端,

export DISPLAY=:0.0
Run Code Online (Sandbox Code Playgroud)

...存储该环境变量的shell在哪里?

我正在使用Ubuntu 8.10.我查看了文件〜/ .profile和/ etc/profile,找不到DISPLAY的痕迹.

linux environment-variables

66
推荐指数
4
解决办法
14万
查看次数

Tensorflow在jupyter中设置CUDA_VISIBLE_DEVICES

我有两个GPU,并希望同时通过ipynb运行两个不同的网络,但第一个笔记本总是分配两个GPU.

使用CUDA_VISIBLE_DEVICES,我可以隐藏python文件的设备,但是我不确定如何在笔记本中这样做.

反正是否有不同的GPU隐藏在同一台服务器上运行的笔记本电脑?

python environment-variables tensorflow

65
推荐指数
3
解决办法
10万
查看次数

在C++中访问环境变量

我想$HOME在我正在编写的C++程序中访问环境变量.如果我用C编写代码,我只是使用该getenv()函数,但我想知道是否有更好的方法来实现它.这是我到目前为止的代码:

std::string get_env_var( std::string const & key ) {                                 
    char * val;                                                                        
    val = getenv( key.c_str() );                                                       
    std::string retval = "";                                                           
    if (val != NULL) {                                                                 
        retval = val;                                                                    
    }                                                                                  
    return retval;                                                                        
}           
Run Code Online (Sandbox Code Playgroud)

我应该用getenv()C++访问环境变量吗?是否有任何我可能遇到的问题,我可以通过一点点知识来避免?

c++ environment-variables

64
推荐指数
4
解决办法
8万
查看次数

无法访问`database.yml`文件中的环境变量

我有以下development.yml文件的开发部分:

development:
  adapter: postgresql
  host: localhost
  database: testtb
  username: app_user
  password: ENV['APP_USER_POSTGRES_PASSWORD']     <= Troublesome line
Run Code Online (Sandbox Code Playgroud)

当我打开一个rails控制台bundle exec rails console并键入时,ENV['APP_USER_POSTGRES_PASSWORD']我会回到我在本地配置文件中指定的数据库密码.但是,当我启动我的rails服务器时,它无法连接到数据库,失败了

PGError FATAL:  password authentication failed for user "app_user"
Run Code Online (Sandbox Code Playgroud)

这是以前的工作,当我用纯文本输入数据库密码,而不是试图通过它来访问它ENV['...'],但出于显而易见的原因,我想完全保留这个文件的实际密码(因此在代码库之外)同时仍然能够对文件进行其他非安全更改database.yml.

我缺少的语法有什么特别之处,或者database.yml在加载文件时由于某种原因环境变量不可用?

yaml ruby-on-rails environment-variables ruby-on-rails-2

64
推荐指数
2
解决办法
2万
查看次数

主管和环境变量

我真的不知道如何让主管使用环境变量.

以下是配置代码段.

[program:htNotificationService]
priority=2
#autostart=true
#autorestart=true
directory=/home/ubuntu/workspace/htFrontEnd/heythat/htsite
command = /usr/bin/python htNotificationService.py -service
stdout_logfile=/var/log/heythat/htNotificationService.log
redirect_stderr=true
environment=PATH=/home/ubuntu/workspace/htFrontEnd/heythat
stopsignal=QUIT
Run Code Online (Sandbox Code Playgroud)

我尝试过以下方法:

environment=PATH=/home/ubuntu/workspace/htFrontEnd/heythat
environment=PYTHONPATH=$PYTHONPATH:/home/ubuntu/workspace/htFrontEnd/heythat
environment=PATH=/home/ubuntu/workspace/htFrontEnd/heythat,PYTHONPATH=$PYTHONPATH:/home/ubuntu/workspace/htFrontEnd/heythat
Run Code Online (Sandbox Code Playgroud)

当我开始上司时,我得到了

htNotificationService: ERROR (abnormal termination)
Run Code Online (Sandbox Code Playgroud)

我可以通过设置python路径从shell开始,但不能从主管开始.在日志中,我收到一条错误消息,指出无法找到导入.好吧,如果主管能够工作,那就可以解决.我甚至在/ etc/environment中有路径?

为什么主管不工作?

environment-variables supervisord

63
推荐指数
5
解决办法
6万
查看次数

LINES和COLUMNS环境变量在脚本中丢失

考虑以下:

me@mine:~$ cat a.sh 
#!/bin/bash
echo "Lines: " $LINES
echo "Columns: " $COLUMNS
me@mine:~$ ./a.sh 
Lines: 
Columns: 
me@mine:~$ echo "Lines: " $LINES
Lines:  52
me@mine:~$ echo "Columns: " $COLUMNS
Columns:  157
me@mine:~$ 
Run Code Online (Sandbox Code Playgroud)

变量$LINES$COLUMNS是shell变量,不是环境变量,因而不会被导出到子进程(但会被自动更新,当我调整xterm窗口,通过SSH从远程位置登录,即使).有没有办法让我的脚本知道当前的终端大小?

编辑:我需要这个作为解决方法来解决这个问题:vi(以及vim,less和类似的命令)每次使用它时都会搞砸屏幕.更改终端不是一个选项,因此我正在寻找解决方法(向下滚动$LINES线肯定不是完美的解决方案,但至少比丢失前一个屏幕更好)

bash shell terminal environment-variables

62
推荐指数
6
解决办法
4万
查看次数

如何在systemd服务单元中启用virtualenv?

我想在系统服务文件中"激活"virtualenv.

我想避免在systemd进程和python解释器之间有一个shell进程.

我目前的解决方案如下:

[Unit]
Description=fooservice
After=syslog.target network.target

[Service]
Type=simple
User=fooservice
WorkingDirectory={{ venv_home }}
ExecStart={{ venv_home }}/fooservice --serve-in-foreground
Restart=on-abort
EnvironmentFile=/etc/sysconfig/fooservice.env

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

/etc/sysconfig/fooservice.env

PATH={{ venv_home }}/bin:/usr/local/bin:/usr/bin:/bin
PYTHONIOENCODING=utf-8
PYTHONPATH={{ venv_home }}/...
VIRTUAL_ENV={{ venv_home }}
Run Code Online (Sandbox Code Playgroud)

但我遇到了麻烦.我得到ImportErrors,因为缺少sys.path中的一些内容.

python environment-variables virtualenv

61
推荐指数
3
解决办法
4万
查看次数

运行Inno Setup Installer时如何修改PATH环境变量?

Inno Setup允许您通过[Registry]部分设置环境变量(通过设置对应于环境变量的注册表项)

但是,有时您不只是想设置一个环境变量.通常,你想修改它.例如:安装时,可能需要在PATH环境变量中添加/删除目录.

如何从InnoSetup中修改PATH环境变量?

inno-setup environment-variables

60
推荐指数
5
解决办法
4万
查看次数

我们可以通过dockerfile构建docker镜像时通过cmd行传递ENV变量吗?

我正在开展一项任务,涉及使用Dockerfile构建一个以centOs为基础的docker镜像.dockerfile中的一个步骤需要设置http_proxyhttps_proxy ENV变量才能在代理后面工作.

由于这个Dockerfile将由具有不同代理的多个团队使用,我想避免为每个团队编辑Dockerfile.相反,我正在寻找一个允许我在构建时传递ENV变量的解决方案,例如,

sudo docker build -e http_proxy = somevalue.

我不确定是否已有提供此功能的选项.我错过了什么吗?

environment-variables docker boot2docker dockerfile

60
推荐指数
3
解决办法
4万
查看次数

参考Swift中的环境变量

有人知道如何在Swift中获取环境变量吗?

environment-variables swift

60
推荐指数
4
解决办法
2万
查看次数