perl对windows的进程的一些常用操作
1、获取所有正在运行的进程,用到了cpan的Win32::Process::List模块
?
?
use Win32::Process::List; my $P = Win32::Process::List->new();# constructor my %list = $P->GetProcesses(); # returns the hashes with PID and process name foreach my $key ( keys %list ) { # $list{$key} is now the process name and $key is the PID print sprintf("%30s has PID %15s", $list{$key}, $key) . "\n"; } my $PID = $P->GetProcessPid("explorer");# get the PID of process explorer.exe my $np = $P->GetNProcesses(); # returns the number of processes
?
?
2、结束某个进程
? ? ?使用kill发送信号即可,19为停止进程,12345为进程的id,可通过getProcessPid获取
? ? ?$sig_stop=19;
$pid=12345;kill $sig_stop, $pid;