当前位置: 首页 > 面试题库 >

PHP exec $ PATH变量缺少元素

曹德明
2023-03-14
问题内容

当我在命令行中回显$ PATH时,它将返回

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Applications/MAMP/Library/bin:/usr/local/git/bin:/usr/X11/bin

当我执行这个PHP代码

exec('echo $PATH; whoami; less /etc/paths; 2>&1')

我懂了

string 'echo $PATH; whoami; less /etc/paths; 2>&1' (length=56)
array
  0 => string '/usr/bin:/bin:/usr/sbin:/sbin' (length=29)
  1 => string 'eric' (length=4)
  2 => string '/usr/bin' (length=8)
  3 => string '/bin' (length=4)
  4 => string '/usr/sbin' (length=9)
  5 => string '/sbin' (length=5)
  6 => string '/usr/local/bin' (length=14)
  7 => string '/Applications/MAMP/Library/bin' (length=30)
  8 => string '/usr/bin:/bin:/usr/sbin:/sbin' (length=29)

这是在Mac OS X上。谁能告诉我为什么我的最后两个路径元素丢失了?


问题答案:

Mac OS
X上的环境变量由不同的机制来设置,具体取决于启动代码或其父进程的方式。为了确保从交互式外壳程序启动的项目和由WindowServer启动的项目具有相同的路径,您需要使〜/
.MacOSX / environment.plist与.profile(或.cshrc)中设置的内容保持同步。



 类似资料:
  • 问题内容: 我想填充用的与经典ASP / VBScript中的站点。这些值是从SQL Server数据库读取和获取的,其代码类似于: 我的问题是似乎只有一侧可以评估。 随着我得到: 随着我得到: 应该采取什么措施缓解这一问题? 问题答案: 试试这个:

  • 我正在尝试使用SpringMVC(来自Spring boot 1.2.3.Release)向我的Rest控制器添加一个矩阵参数(或矩阵变量),下面是我的代码: 这就是我得到的答案: 出现错误(类型=错误请求,状态=400)。 String类型的方法参数缺少矩阵变量“agent name” 我做错了什么?根据http://docs.spring.io/spring-framework/docs/3.

  • 我试图使用python selenium实现一些自动化功能,但遇到了一些奇怪的行为。 html的总体布局: 现在,每个iframe实际上都有相同的内部html,网站上的代码似乎是随机选择哪个iframe得到了显示="块"。然而,我找不到任何iframe。 我尝试了一种标准方法:

  • 在检查JDK1.7的字节码时,我发现RT.jar中一些Java类的字节码(例如)不包括局部变量表。例如,我使用命令,并获得方法的字节码,如下所示: null

  • 我最近通过Homebrew在我的Mac上安装了Apache 2.4。(我以前使用苹果提供的Apache。) 在PHP脚本中,我对位于/usr/local/bin中的可执行文件调用Exec(x),但它失败了,因为/usr/local/bin未包含在Apache的PATH环境变量中。运行phpinfo()显示路径为/usr/bin:/bin:/usr/sbin:/sbin。 我以前在/System/L

  • 我有以下JAXB对象: 我使用JAXB编组程序将对象转换为XML: 它运行平稳,没有任何异常,但是,结果总是缺少元素键。我试图将其改为Attribute,但它也不起作用。以下是输出示例: 我曾尝试将键更改为另一个名称,例如AuthKey,但它仍然缺失。我做错了什么? 编辑我发现了问题,这是因为我的键的值是空的。如果它包含值,则将其写入XML。然而,您能解释一下为什么在XMLElement中,我写了