mirror of
https://github.com/uutils/procps.git
synced 2026-05-06 06:06:43 -04:00
c63a93da53b6afc3997f0a5b6eadc1b1f893071e
Refactor the process selection to better support cases where the behaviour is more complex than simply union of what each individual flag would list. This is bit similar to what is used in pgrep.
procps
Rust reimplementation of the procps project
Provides command line and full screen utilities for browsing procfs, a "pseudo" file system dynamically generated by the kernel to provide information about the status of entries in its process table (such as whether the process is running, stopped, or a "zombie").
Ongoing:
free: Shows the amount of free and used memory in the system.pgrep: Searches for processes based on name and other attributes.pidof: Find the process ID of a running program.pidwait: Waits for a specific process to terminate.pkill: Kills processes based on name and other attributes.pmap: Displays the memory map of a process.ps: Displays information about active processes.pwdx: Shows the current working directory of a process.skill: Sends a signal to processes based on criteria like user, terminal, etc.slabtop: Displays detailed kernel slab cache information in real time.snice: Changes the scheduling priority of a running process.sysctl: Read or write kernel parameters at run-time.tload: Prints a graphical representation of system load average to the terminal.top: Displays real-time information about system processes.vmstat: Reports information about processes, memory, paging, block IO, traps, and CPU activity.w: Shows who is logged on and what they are doing.watch: Executes a program periodically, showing output fullscreen.
TODO:
hugetop: Report hugepage usage of processes and the system as a whole.
Elsewhere:
killis already implemented in https://github.com/uutils/coreutilsuptime: Shows how long the system has been running, including load average. It is already implemented in https://github.com/uutils/coreutils
Installation
Ensure you have Rust installed on your system. You can install Rust through rustup.
Clone the repository and build the project using Cargo:
git clone https://github.com/uutils/procps.git
cd procps
cargo build --release
cargo run --release
License
procps is licensed under the MIT License - see the LICENSE file for details
Languages
Rust
99.7%
Shell
0.3%