perl - 如何使用 Cygwin 在 perl 脚本中运行系统命令

标签 perl unix cygwin spawn

我正在尝试在 Cygwin 中实现一个 perl 脚本。该脚本在其中进行了一些不同的调用。例如,

system "C:\\users\\program.exe"; 

exec("C:\\users\\program.exe");

当我尝试在 cygwin 中运行它时,出现错误:

sh: C:cygwin64cygdriveprogram.exe: command not found

我知道这是一个愚蠢的问题,但我如何让它找到 program.exe?如果我查看 cygwin 终端中的目录,那么 program.exe 显然在那里......

找到程序后,我想在新的 cygwin 终端中生成新进程。

最佳答案

使用 Unix 文件分隔符和 /cygdrive/c/ 虚拟驱动器:

system "/cygdrive/c/users/program.exe"; 

exec("/cygdrive/c/users/program.exe")

关于perl - 如何使用 Cygwin 在 perl 脚本中运行系统命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19773054/

相关文章:

perl - 使用 Getopt::Long 解析参数的最简洁方法

c# - 匿名方法/函数 : a fundamental feature or a violation of OO principles?

unix - 使用sed,删除字符首次出现之前的所有内容

linux - awk 比较两个文件中的列,如果在文件 2 中没有看到文件 1 列,则打印文件 1 列 [与此相关的类似帖子被错误地询问]

c - 为什么当我用记事本创建 Makefile 时,它​​保存的是 .txt

windows - 从上下文菜单中删除 "Bash Prompt Here"

perl - 如何在 Perl 中访问函数参数?

perl - 如何在没有硬编码循环的情况下创建多个列表的组合?

unix - 使用 OCaml 收集外部命令的输出

ubuntu - 用于 vim/tmux 的 headless SSH 服务器上的 xsel/xclip