根据操作系统的FireFox.exe路径

时间:2016-05-16 13:28:36

标签: java unix firefox

我们如何使用java代码识别firefox.exe的安装路径。

    accumulator = (accumulator) && (runCommand("C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe", "-P PAX-PROFILE-1 %s", "google"));
    accumulator = (accumulator) && (runCommand("C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe", "-P PAX-PROFILE-2 %s", "google"));
    accumulator = (accumulator) && (runCommand("C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe", "-P PAX-PROFILE-3 %s", "google"));

这里我通过windows完成firefox.exe路径。

现在我正在使用

在Java中执行这些命令
      Process p = Runtime.getRuntime().exec(parts);

我们有什么方法可以确定

的位置
  

firefox.exe

根据操作系统。

2 个答案:

答案 0 :(得分:1)

由于您在Unix / Linux / MacOSX系统上将问题标记为' unix',您可以使用which命令从命令行执行此操作; e.g。

$ which firefox
/usr/bin/firefox

因此,要在Java中执行相同操作,可以使用Process运行该命令,并将输出读取为字符串。也可以通过读取$PATH环境变量,拆分它,检查路径上的每个目录来查看它们是否包含" firefox"可执行文件。 (你可能在Windows上做同样的事情。)

BTW,Unix / Linux / MacOSX上的可执行文件没有" .exe"文件后缀。 " .exe"后缀是一个Windows-ism。

答案 1 :(得分:0)

这不是特定于java的。在unix系统(和DOS shell)上,查找可执行文件的一般合同如下:

  1. 获取PATH环境变量
  2. 按路径分隔符
  3. 拆分它
  4. 将每个拆分结果视为目录
  5. 检查它是否包含具有您正在寻找的名称的可执行文件。
  6. 至少在CLI上使用的是什么。桌面环境可能使用单独的应用程序注册表。