Skip to content

Latest commit

 

History

History
47 lines (33 loc) · 892 Bytes

README.md

File metadata and controls

47 lines (33 loc) · 892 Bytes

proc-ctl

A helper library for querying and manipulating processes.

Find what port a process is using

use proc_ctl::PortQuery;

let query = PortQuery::new()
    .tcp_only()
    .ip_v4_only()
    .process_id(55932) // Get a process ID from somewhere
    .expect_min_num_ports(1);

query.execute().unwrap();

Find processes by name

use proc_ctl::{ProcCtlResult, ProcQuery};

fn main() -> ProcCtlResult<()> {

    let query = ProcQuery::new()
        .process_name("firefox");

    let processes = query.list_processes()?;
    Ok(())
}

Find the children of a given process

use proc_ctl::{ProcCtlResult, ProcQuery};

fn main() -> ProcCtlResult<()> {
    let query = ProcQuery::new()
        .process_id(55932) // Get a process ID from somewhere
        .expect_min_num_children(1);

    query.children()?;
    Ok(())
}