标签: env

如何在Anaconda(Conda)环境中跟踪pip安装的软件包?

我已经安装并一直在使用Anaconda Python发行版,我已经开始使用Anaconda(Conda)环境了.我可以使用标准conda install...命令将包中的包放入我的环境中,但是要使用外部的任何东西(例如Flask-WTF,flask-sqlalchemy和alembic),我需要pip install在活动环境中使用.但是,当我查看环境的内容时,无论是在目录中,还是使用conda list这些pip installed包都没有显示出来.

使用pip freeze并pip list列出我曾经安装的每个包.

有没有一种方法来跟踪什么是在我的每一个巨蟒env(能够对S pip和conda安装)?

python env pip anaconda conda

128
推荐指数
5
解决办法
9万
查看次数

Dockerfile - 将ENV设置为命令结果

是否可以将docker ENV变量设置为命令的结果?喜欢:

ENV MY_VAR whoami
Run Code Online (Sandbox Code Playgroud)

我希望MY_VAR获得值"root"或者任何whoami返回的值

env dockerfile

56
推荐指数
7
解决办法
3万
查看次数

rails 3,如何在Settings.yml文件中使用ENV配置变量?

在我的settings.yml文件中,我有几个配置变量,其中一些参考ENV []变量.

例如,我有ENV ['FOOVAR']等于WIDGET

我以为我可以在<%%>里面引用ENV变量,如下所示:

settings.yml中:

default:
   cv1: Foo
   cv2: <% ENV['FOOVAR'] %>
Run Code Online (Sandbox Code Playgroud)

在rails控制台中,如果我输入

> ENV['FOOVAR']
=> WIDGET
Run Code Online (Sandbox Code Playgroud)

但

> Settings.cv1
=> Foo   (works okay)
> Settings.cv2
=>nil   (doesn't work???)
Run Code Online (Sandbox Code Playgroud)

yaml env ruby-on-rails

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

env:python\r:没有这样的文件或目录

我的Python脚本beak包含以下shebang:

#!/usr/bin/env python
Run Code Online (Sandbox Code Playgroud)

当我运行脚本时$ ./beak,我得到了

env: python\r: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我之前从存储库中提取了此脚本.这可能是什么原因?

python macos env shebang osx-mountain-lion

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

Mac OS:/ usr/bin/env:错误的解释器:不允许操作

我正在尝试在Mac OS 10.7(Lion)上运行此脚本,我收到错误:

$ bbcolors
-bash: /usr/local/bin/bbcolors: /usr/bin/env: bad interpreter: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

我已成功在我的其他Mac上运行此脚本.这只是从Daring Fireball下载和修改的脚本.

我发现这个人有一个非常类似的问题,但接受的答案是文件系统在mount上有一个'noexe'选项.我很确定对我来说不是这样的,因为我刚刚将它放在/ usr/local/bin /中并且其他内容工作正常(它也不会从其他地方或其他用户运行,包括root) .

$ which bbcolors
/usr/local/bin/bbcolors
$ ls -l /usr/local/bin/bbcolors 
-rwxr-xr-x@ 1 nick  staff  9751 Mar 30 19:09 /usr/local/bin/bbcolors
Run Code Online (Sandbox Code Playgroud)

它是一个Perl脚本而不是编译的二进制文件,而不是那个重要的.这里有一些关于它的价值的额外信息:

$ cat /usr/local/bin/bbcolors |head -n 1
#!/usr/bin/env perl
$ which perl
/usr/bin/perl
$ env | grep PATH
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
Run Code Online (Sandbox Code Playgroud)

macos bash perl env command-line-interface

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

对一个命令使用不同的PHP版本CLI可执行文件

所以我安装了三个PHP版本的Gentoo盒子(没关系原因):

  1. /usr/bin/php - > /usr/lib64/php5.4/bin/php
  2. /usr/bin/php5.5 - > /usr/lib64/php5.5/bin/php
  3. /usr/bin/php5.6 - > /usr/lib64/php5.4/bin/php

我想使用composer 安装Laravel框架:

$ composer create-project laravel/laravel --prefer-dist
Run Code Online (Sandbox Code Playgroud)

但是这会引发错误,因为Laravel要求PHP> 5.5.9并且默认php解释器为5.4.所以我发出另一个命令:

$ /usr/bin/php5.6 /usr/bin/composer create-project laravel/laravel --prefer-dist
Run Code Online (Sandbox Code Playgroud)

这让我更进了一步,但随后Laravel的一些安装后命令composer.json发挥作用,安装崩溃了.

这是因为composer.json命令看起来像这样:

"post-install-cmd": [
    "php artisan clear-compiled",
    "php artisan optimize"
],
Run Code Online (Sandbox Code Playgroud)

如您所见,再次使用"默认"解释器!

现在,正确的PHP文件从以下shebang开始:

#!/usr/bin/env php
Run Code Online (Sandbox Code Playgroud)

这是一个很好的功能,因为PHP解释器可以在不同系统的不同位置找到.不幸的是,在这种情况下,env命令返回它在$PATH环境变量中找到的第一个可执行文件的路径.

我怎么可能改变当前的会话环境或执行什么样的技巧,以便执行整个Laravel安装过程php命令/usr/bin/php5.6而不是/usr/bin/php?

我不想改变$PATH变量或修改文件一样composer,composer.json或者Laravel的CLI工具artisan.


编辑:还假设我想从常规用户帐户执行此操作(即没有root权限).

php linux env command-line-interface laravel

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

Laravel 5 - env本地调试true没有显示错误

我正在尝试为我的应用启用调试,但看起来我没有任何反馈.

环境设置为本地(在.env文件中),如果我运行

php artisan env
Run Code Online (Sandbox Code Playgroud)

我明白了

Current application environment: local
Run Code Online (Sandbox Code Playgroud)

我本地环境的调试配置设置为 true

return [

    'debug' => true,
Run Code Online (Sandbox Code Playgroud)

此外,如果我在我的主配置文件(配置文件夹中的app.php)中设置,debug = true我仍然有反馈说代码中有错误.

如果代码中有错误,我只有一个空页面(对于debug = false)

我错过了什么?

php debugging env laravel laravel-5

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

将数组定义为node.js中的环境变量

我有一个从中提取数据的数组.

festivals = ['bonnaroo', 'lollapalooza', 'coachella']
Run Code Online (Sandbox Code Playgroud)

由于我使用的是heroku,用环境变量替换它可能更好,但我不知道该怎么做.

使用JSON字符串作为环境变量的方式去?

javascript env heroku environment-variables node.js

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

如何找到运行代码的conda环境的名称?

我正在寻找一种很好的方法来计算我在运行代码或交互式python实例中的conda环境的名称.

用例是我使用miniconda安装的Python 2和Python 3内核运行Jupyter笔记本.默认环境是Py3.Py2有一个单独的环境.在笔记本文件中,我希望它尝试conda install foo.我现在正在使用subcommand这个,因为我找不到类似的程序性conda pip.main(['install','foo']).

问题是foo如果笔记本使用Py2内核运行,命令需要知道要安装在那里的Py2环境的名称.如果没有该信息,它将安装在默认的Py3环境中.我希望代码能够确定它所处的环境以及它自己的正确名称.

到目前为止,我得到的最佳解决方案是:

import sys

def get_env():
    sp = sys.path[1].split("/")
    if "envs" in sp:
        return sp[sp.index("envs") + 1]
    else:
        return ""
Run Code Online (Sandbox Code Playgroud)

是否有更直接/适当的方法来实现这一目标?

python env anaconda conda jupyter

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

Shell脚本shebang为未知的道路

是否可以在不知道要执行的程序路径的情况下指定shebang行?

也许不指定路径

#!node
Run Code Online (Sandbox Code Playgroud)

或指定几个选项

#!/usr/local/bin/node
#!/usr/bin/node
Run Code Online (Sandbox Code Playgroud)

跨平台解决方案的额外点(各种风格的linux,BSD,OSX等......)

shell env shebang

16
推荐指数
1
解决办法
3529
查看次数