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



如何使用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

根据操作系统

由于您将问题标记为"unix",因此在unix/Linux/MacOSX系统上,您可以使用which命令从命令行执行此操作;例如

$ which firefox
/usr/bin/firefox

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

顺便说一句,Unix/Linux/MacOSX上的可执行文件没有".exe"文件后缀。".exe"后缀是Windows ism。

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

  1. 获取PATH环境变量
  2. 按路径分隔符分隔
  3. 将每个拆分结果视为一个目录
  4. 检查它是否包含具有您要查找的名称的可执行文件

至少这是CLI上使用的内容。桌面环境可能使用单独的应用程序注册表。

最新更新