Ruby无法在PATH环境变量中找到外部程序

时间:2011-10-06 13:58:00

标签: ruby windows

有人可以解释在寻找PATH中的程序时Ruby的变化吗?我知道这曾经有用。

Windows命令行(exiftool在C:\ Windows \ system32中):

C:\>exiftool
Usage: exiftool [ -Alib.par ] [ -Idir ] [ -Mmodule ] [ src.par ] [ program.pl ]
   exiftool [ -B|-b ] [-Ooutfile] src.par

来自 irb

`exiftool`
Errno::ENOENT: No such file or directory - exiftool
    from (irb):1:in ``'
    from (irb):1
    from C:/Ruby192/bin/irb:12:in `<main>'

1 个答案:

答案 0 :(得分:1)

我可能会离开这里,但你不需要在系统调用中包装它 - 即执行它就好像它在命令行上运行一样?在IRB中,我可以输入任何我想要的命令,我得到的结果与你看到的相同,除非我这样包装:

system("exiftool")

例如,要在IRB中显示当前目录中的文件列表,dir会失败,但system("dir")会正常工作。