如何在perl中将参数传递给系统命令

2023-12-02

我的命令:

system("start cmd.exe /k C:\\script.pl $arg1 $arg2 $arg3");

没有正确传递参数。这样做的正确方法是什么?

Thx


最好的调用方式system是一个数组或一个列表:

my @args = ("start", "cmd.exe", "/k", "C:\\script.pl", $arg1, $arg2, $arg3);
system @args;

system "start", "cmd.exe", "/k", "C:\\script.pl", $arg1, $arg2, $arg3;

与单个字符串相比system,这节省了“如何引用参数”的复杂性,因为 shell 没有机会解释它们。另一方面,如果您希望 shell 执行 I/O 重定向或管道传输,您可能不会使用此机制。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在perl中将参数传递给系统命令 的相关文章

随机推荐