问题标签 [environment-variables]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 为什么我的命令行不能从 cron 运行?
我有一个 perl 脚本(特别是XMLTV系列“抓取器”的一部分tv_grab_oztivo
)。
我可以像这样成功运行它:
我使用所有内容的完整路径来消除工作目录的问题。权限应该不是问题。
所以,如果我从终端(Mac OSX)运行它就可以了。
但是当我将它设置为通过 cron 作业运行时,似乎什么都没有发生。没有创建输出等。
据我所知,crontab 没有任何问题,因为如果我用 helloworld.pl 代替实际脚本,它会在正确的时间运行得很好。
那么,我能做些什么来调试呢?从这%ENV
两种情况下我可以看出环境非常不同,但是我可以采取哪些其他方法进行调试?我怎样才能看到 cron 作业的输出,这可能是来自 shell 的某种 perl “死”消息或“未找到”消息或其他什么?
还是我应该尝试以某种方式为命令的 cron 版本提供与它运行时相同的环境?
batch-file - 批处理文件,$ : 和 ~
我一直在编写一个需要在文件中扩展环境字符串的应用程序。
为此,我可以使用标准的 Windows API 函数 ExpandEnvironmentStrings:http: //msdn.microsoft.com/en-us/library/ms724265 (VS.85).aspx
不过,我确实对该功能有一些问题。第一的:
The size of the lpSrc and lpDst buffers is limited to 32K.
下一个:Note that this function does not support all the features that Cmd.exe supports. For example, it does not support %variableName:str1=str2% or %variableName:~offset,length%.
我想实现 cmd.exe 允许的这些额外功能,但我不确定它们到底是什么。:~offset,length 有点明显......子字符串。但不确定第一个是什么。
有任何想法吗?
比利3
macros - 如何在 nmake 调用之间转发宏?
如何在 nmake 调用之间转发宏?
假设我们有
我正在尝试不同的事情,例如使用 set 和 setx 命令,但是在父 makefile 中设置的变量值在从其中调用的 makefile 中不可见。
c# - .net 在运行时确定我的应用是 exe 还是 Web 应用
我确定我过去曾这样做过,但我在文档中已经有一段时间了,似乎无法再次找到它。我需要能够在我的业务域中的运行时确定我的应用程序在哪个上下文中运行。这样我就可以对配置文件进行一些切换,并使用正确的方法来确定我是在调试还是发布等中运行。我非常有信心它在 System.Environment 中,但我还没有遇到它。
eclipse - 设置环境变量启动 mac eclipse
我的公司提供了一个基于 Eclipse 的开发环境,它需要为底层工具链设置一些环境变量,以便可以同时安装多个版本而不接管系统。
我想在 finder 或 Dock 中提供一个图标来设置这些然后启动 Eclipse,这样客户就不会在没有设置环境的情况下意外启动 Eclipse。这是我到目前为止所尝试的:
在 Info.plist 中为 Eclipse 设置环境:
这应该是一个不错的方法,但我无法将其添加到现有路径(如 export PATH=/myapp/bin:$PATH)。
bash 脚本包装 eclipse:
我创建了一个名为 eclipse.command 的 bash 脚本来设置环境,然后启动 eclipse。这将打开一个终端窗口以及 Eclipse 图标,并允许人们“保持停靠”以查看裸月食。我不能将 eclipse.command 放在扩展坞上,因为它不是应用程序。
Applescript 包装 eclipse.command:
围绕 eclipse.command 的 Applescript 包装器使它看起来像一个应用程序并防止出现终端窗口。不幸的是,我现在得到了一个用于applescript 的dock 图标和一个用于eclipse 的图标,因此仍然可以将裸露的eclipse 保留在dock 上。
有什么建议么?我会以完全错误的方式解决这个问题吗?
sql - Using Environment variables in T-SQL
How can I read the value of a system environment variable in a T-SQL script?
This is to run on SQL Server 2005.
php - 是否可以在 php.ini 中使用环境变量?
我不想在我的 php.ini 配置中硬连线某些路径,而是想使用在其他一些地方(例如我的 Apache 配置)共享的系统变量来配置它们。我进行了一些搜索,但找不到合适的关键字组合来发现是否有办法做到这一点。
有谁知道这是否可以做到?
现在 SCRATCH_HOME 可以在环境中导出为 /tmp 或 /var/scratch 或任何我想要的。
process - 如何缩短 inittab 进程条目,也就是将 init 可以看到的环境变量放在哪里?
我正在设置一个 Debian Etch 服务器来使用 nginx 托管 ruby 和 php 应用程序。我已成功配置 inittab 以在启动时使用 respawn 操作启动 php-cgi 进程。在服务 1000 个请求后,php-cgi 工作进程死亡并由 init 重新生成。inittab 记录如下所示:
我最初将进程条目(第三个冒号之后的所有内容)写在一个单独的脚本中(只是因为它很长)并将该脚本名称放在 inittab 记录中,但由于脚本将运行它的单行并死掉,系统日志被填充有这样的错误:
因此,我摆脱了脚本文件,只是将整行放在 inittab 中。从此以后,系统日志中不会出现任何错误。
现在我正在尝试使用Thin来服务 Rails 应用程序。我可以通过运行以下命令成功启动瘦服务器:
无论我是否使用 -d (守护进程)标志,它的工作原理显然完全相同。无论哪种方式,命令行控制都会立即返回(进程已被守护)。如果我将整个命令(减去 sudo 和绝对路径)放入 inittab,init 会抱怨(在 syslog 中)进程条目太长,因此我将选项放入 /etc/profile 中的导出环境变量中。现在我可以通过以下方式成功启动服务器:
但是当我用 respawn 动作把它放在一个 inittab 记录中时
日志清楚地表明环境变量对 init 不可见;就好像该命令只是“薄启动”。
如何缩短 inittab 进程条目? 除了 /etc/profile 之外,还有其他文件可以设置 THIN_OPTIONS 环境变量吗?我早期使用 php-cgi 的经验告诉我,我不能将整个命令放在单独的脚本中。
environment-variables - 如何从 gvim 中获取环境变量
当我从终端启动gvim时,我可以访问我的所有环境变量。
但是,如果我从菜单或“运行应用程序”启动器启动gvim ,我的所有环境变量都无法访问。
如果gvim不是从终端启动的,我如何访问在我的 bashrc 中定义的环境变量?
这些变量在 ~/.bashrc 中定义
发行版:Ubuntu Intrepid
注意1:“运行应用程序”启动器可通过按 ALT+<F2> 访问
oracle - 有没有一种简单的方法可以将 HTTP_ACCEPT_LANGUAGE 转换为 Oracle NLS_LANG 设置?
在向 Oracle Web 应用程序(基于 mod_plsql 构建)添加国际化功能时,我想解释 HTTP_ACCEPT_LANGUAGE 参数并使用它来设置 Oracle 会话中的各种 NLS_* 设置。
例如:
但是,我想你可以得到更复杂的东西......
人们以前是如何处理这种事情的?
编辑 - 以下是 Curt 的详细回答
感谢Curt清晰详细的回复。不过,我并没有真正说清楚,因为我真的在问是否有任何现有的 Oracle 小部件可以处理这个问题。
我已经在手动解析 HTTP_ACCEPT_LANGUAGE 变量的道路上,并且 - 正如 Curt 在他的回答中指出的那样 - 有一些微妙的复杂领域。感觉就像以前必须做过很多次的事情。随着我编写越来越多的代码,我有一种下沉的“我在重新发明轮子”的感觉。:)
必须有一个现有的 Oracle 方法来解决这个问题——可能在 iAS 中?
编辑 - 偶然发现了答案
在寻找其他东西时,我偶然发现了 UTL_I18N 包,这正是我所追求的: