#!/usr/bin/perl
$sim = "multiq";
`make SCHED=$sim`;
`script > scripter`;
`echo hi`;
print pack("c", 04);
~
调用脚本时,此脚本会挂起。不知道如何让perl脚本继续运行。
答案 0 :(得分:5)
请注意,反引号(‘‘
)运行命令并返回其输出。如果您要忽略输出,请使用
system
system("make SCHED=$sim") == 0 or die "$0: make exited " . ($? >> 8)
如果你想要发射一个程序(即在后台启动它而不用担心它什么时候完成),你可以使用
system("script >scripter &");
答案 1 :(得分:1)
如果您希望所有进程都进行交互,则必须在一个子进程中运行该进程。有关处理此问题的各种方法,请参阅perlipc。
答案 2 :(得分:1)
您可能希望查看Expect来控制互动会话
答案 3 :(得分:0)
反引号('')运行命令并返回其输出。因此,您可以进一步存储和操作它。如果要忽略输出,请使用system()。此外,如果您想在后台使用&在进程的前缀中。例如,您希望使用您的脚本启动Gimp,只需说
system("gimp &");