{"id":13437091,"url":"https://github.com/dalance/procs","last_synced_at":"2026-02-27T05:06:38.619Z","repository":{"id":37270001,"uuid":"167957539","full_name":"dalance/procs","owner":"dalance","description":"A modern replacement for ps written in Rust","archived":false,"fork":false,"pushed_at":"2026-02-20T20:07:45.000Z","size":4210,"stargazers_count":5928,"open_issues_count":31,"forks_count":136,"subscribers_count":25,"default_branch":"master","last_synced_at":"2026-02-21T01:41:57.312Z","etag":null,"topics":["cli","process","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dalance.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"dalance"}},"created_at":"2019-01-28T12:19:23.000Z","updated_at":"2026-02-20T20:06:36.000Z","dependencies_parsed_at":"2026-01-06T15:06:33.536Z","dependency_job_id":"385f5296-c339-4767-b2e2-bf87ff59b381","html_url":"https://github.com/dalance/procs","commit_stats":{"total_commits":1099,"total_committers":45,"mean_commits":24.42222222222222,"dds":0.3448589626933576,"last_synced_commit":"6a4bfdb20da184f9aa551326e836658692b2bff2"},"previous_names":[],"tags_count":114,"template":false,"template_full_name":null,"purl":"pkg:github/dalance/procs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalance%2Fprocs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalance%2Fprocs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalance%2Fprocs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalance%2Fprocs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dalance","download_url":"https://codeload.github.com/dalance/procs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dalance%2Fprocs/sbom","scorecard":{"id":317542,"data":{"date":"2025-08-11","repo":{"name":"github.com/dalance/procs","commit":"9d4aba709bccdca79a3c25310a43fe481062975c"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.8,"checks":[{"name":"Code-Review","score":-1,"reason":"Found no human activity in the last 15 changesets","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/dependabot_merge.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/dependabot_merge.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/periodic.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/periodic.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/periodic.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/periodic.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/regression.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/regression.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/regression.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/regression.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/regression.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/regression.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/regression.yml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/regression.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/regression.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/regression.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/regression.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/winget.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/dalance/procs/winget.yml/master?enable=pin","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  10 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: topLevel 'contents' permission set to 'write': .github/workflows/dependabot_merge.yml:6","Warn: no topLevel permission defined: .github/workflows/periodic.yml:1","Warn: no topLevel permission defined: .github/workflows/regression.yml:1","Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/winget.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.14.10 not signed: https://api.github.com/repos/dalance/procs/releases/208871121","Warn: release artifact v0.14.9 not signed: https://api.github.com/repos/dalance/procs/releases/195249864","Warn: release artifact v0.14.8 not signed: https://api.github.com/repos/dalance/procs/releases/181418962","Warn: release artifact v0.14.7 not signed: https://api.github.com/repos/dalance/procs/releases/181118447","Warn: release artifact v0.14.6 not signed: https://api.github.com/repos/dalance/procs/releases/167754593","Warn: release artifact v0.14.10 does not have provenance: https://api.github.com/repos/dalance/procs/releases/208871121","Warn: release artifact v0.14.9 does not have provenance: https://api.github.com/repos/dalance/procs/releases/195249864","Warn: release artifact v0.14.8 does not have provenance: https://api.github.com/repos/dalance/procs/releases/181418962","Warn: release artifact v0.14.7 does not have provenance: https://api.github.com/repos/dalance/procs/releases/181118447","Warn: release artifact v0.14.6 does not have provenance: https://api.github.com/repos/dalance/procs/releases/167754593"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T00:34:44.472Z","repository_id":37270001,"created_at":"2025-08-18T00:34:44.472Z","updated_at":"2025-08-18T00:34:44.472Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29885801,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-26T23:51:21.483Z","status":"online","status_checked_at":"2026-02-27T02:00:06.759Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","process","rust"],"created_at":"2024-07-31T03:00:54.265Z","updated_at":"2026-02-27T05:06:38.613Z","avatar_url":"https://github.com/dalance.png","language":"Rust","readme":"# procs\n\n**procs** is a replacement for `ps` written in [Rust](https://www.rust-lang.org/).\n\n[![Actions Status](https://github.com/dalance/procs/workflows/Regression/badge.svg)](https://github.com/dalance/procs/actions)\n\n[![Changelog](https://img.shields.io/badge/changelog-v0.14.11-green.svg)](https://github.com/dalance/procs/blob/master/CHANGELOG.md)\n[![Crates.io](https://img.shields.io/crates/v/procs.svg)](https://crates.io/crates/procs)\n[![procs](https://snapcraft.io/procs/badge.svg)](https://snapcraft.io/procs)\n[![homebrew](https://img.shields.io/homebrew/v/procs.svg)](https://formulae.brew.sh/formula/procs)\n\n## Documentation quick links\n\n* [Features](#features)\n* [Platform](#platform)\n* [Installation](#installation)\n* [Usage](#usage)\n* [Configuration](#configuration)\n\n## Features\n\n- Colored and human-readable output\n    - Automatic theme detection based on terminal background\n- Multi-column keyword search\n- Some additional information which are not supported by `ps`\n    - TCP/UDP port\n    - Read/Write throughput\n    - Docker container name\n    - More memory information\n- Pager support\n- Watch mode (like `top`)\n- Tree view\n\n## Platform\n\n- Linux is supported.\n- macOS is experimentally supported.\n    - macOS version is checked on GitHub Actions environment only.\n    - The issues caused by real-machine are welcome.\n- Windows is supported.\n- FreeBSD is experimentally supported.\n\n## Installation\n\n### Download binary\n\nDownload from [release page](https://github.com/dalance/procs/releases/latest), and extract to the directory in PATH.\n\n### [![Packaging status](https://repology.org/badge/vertical-allrepos/procs.svg?columns=3)](https://repology.org/project/procs/versions)\n\n### Nixpkgs\n\nYou can install from [Nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/admin/procs/default.nix).\n\n```\nnix-env --install procs\n```\n\n### snapcraft\n\nYou can install from [snapcraft](https://snapcraft.io/procs).\n\n```\nsudo snap install procs\n```\n\n### homebrew\n\nYou can install from [homebrew](https://formulae.brew.sh/formula/procs).\n\n```\nbrew install procs\n```\n\n### MacPorts\n\nYou can install from [MacPorts](https://ports.macports.org/port/procs/).\n\n```\nsudo port install procs\n```\n\n### Alpine Linux\n\nYou can install from the [Alpine Linux repository](https://pkgs.alpinelinux.org/packages?name=procs).\n\nThe correct repository (see above link for the most up-to-date information) should be enabled before `apk add`.\n\n```\nsudo apk add procs\n```\n\n### Arch Linux\n\nYou can install from the [Arch Linux extra repository](https://archlinux.org/packages/extra/x86_64/procs/).\n\n```\nsudo pacman -S procs\n```\n\n### Scoop\n\nYou can install with [scoop](https://scoop.sh/).\n\n```\nscoop install procs\n```\n\n### Fedora\n\n```\nsudo dnf install procs\n```\n\n### Windows\n\n```\nwinget install procs\n```\n\n### RPM\n\nYou can install with rpm.\n\n```\nsudo rpm -i https://github.com/dalance/procs/releases/download/v0.14.11/procs-0.14.11-1.x86_64.rpm\n```\n\n### Cargo\n\nYou can install with [cargo](https://crates.io/crates/procs).\n\n```\ncargo install procs\n```\n\n### X-CMD\n\nYou can install with [x-cmd](https://www.x-cmd.com).\n\n```\nx env use procs\n# or\nx procs # Download procs, and invoke procs in a way that does not affect the current environment\n```\n\n## Installation Notes\n\n### Permissions issues\n\nOn macOS, normal users can't access any information on other users' processes.\nOn Linux, normal users can't access some information (ex. Read/Write throughput) of other users.\n\nIf you want to show this information, you should use `sudo`.\n\n```console\n$ sudo procs\n[sudo] password for ...:\n```\n\nIf you want to skip password input, you can add the following entry to `/etc/sudoers`.\n\n```text\n[user or group] ALL= NOPASSWD: [procs binary path]\n// ex. myuser ALL= NOPASSWD: /usr/local/bin/procs\n```\n\n## Usage\n\nIn the following screenshots, `config/large.toml` is used as the configuration.\n\n### Show all processes\n\nType `procs` only. It shows the information of all processes.\n\n```console\nprocs\n```\n\n![procs](https://user-images.githubusercontent.com/4331004/55446625-5e5fce00-55fb-11e9-8914-69e8640d89d7.png)\n\n### Search by non-numeric keyword\n\nIf you add any keyword as argument, it is matched to `USER`, `Command` by default.\n\n```console\nprocs zsh\n```\n\nIf you want to add columns matching to non-numeric keyword, `nonnumeric_search` option can be used in configuration file.\n\n![procs_zsh](https://user-images.githubusercontent.com/4331004/55446648-71729e00-55fb-11e9-8e12-1ca63911c568.png)\n\n### Search by numeric keyword\n\nIf a numeric is used as the keyword, it is matched to `PID` by default.\nNumeric is treated as exact match, and non-numeric is treated as partial match by default.\n\n```console\nprocs --or 6000 60000 60001 16723\n```\n\nIf you want to add columns matching to numeric keyword, `numeric_search` option can be used in configuration file.\n\n![procs_port](https://user-images.githubusercontent.com/4331004/55446667-83ecd780-55fb-11e9-8959-53209837c4ee.png)\n\nNote that procfs permissions only allow identifying listening ports for processes owned by the current user, so not all ports will show up unless run as root.\n\n### Logical operation of search keywords\n\nIf there are some keywords, logical operation between the keywords can be specified by commandline option.\n\n- `--and` : The processes that match with all keywords are shown.\n- `--or`  : The processes that match with any keyword are shown.\n- `--nand`: The processes are shown unless these match with all keywords.\n- `--nor` : The processes are shown unless these match with any keyword.\n\nThe default operation can be specified in the [configuration file](#configuration). See `[search]` section.\n\n### Show Docker container name\n\nIf you have access permission to docker daemon ( `unix:///var/run/docker.sock` ), `Docker` column is added.\n\n```console\nprocs growi\n```\n\n![procs_docker](https://user-images.githubusercontent.com/4331004/55446681-91a25d00-55fb-11e9-943d-5b5caeb23c62.png)\n\nNote that procs gets the container information through UNIX domain socket, so [Docker Toolbox](https://docs.docker.com/toolbox/) on macOS (doesn't use UNIX domain socket) is not supported.\n[Docker Desktop for Mac](https://docs.docker.com/docker-for-mac/) is supported but not tested.\n\n### Pager\n\nIf output lines exceed terminal height, pager is used automatically.\nThis behavior and pager command can be specified by [configuration file](#pager-section).\n\n#### Linux / macOS\n\nOn Linux and macOS, `less` is the default pager.\nIf there is not `less`, `more` is used.\nInstead of them, built-in pager can be used by configuration `use_builtin`.\n\n#### Windows\n\nOn Windows, built-in pager is always used.\n\n### Watch mode\n\nIf `--watch` or `--watch-interval \u003csecond\u003e` option is used, procs automatically updates output like `top`.\nIf `--watch` is used, the update interval becomes 1s.\nThe update interval can be specified by the argument of `--watch-interval`.\nThere are some keyboard shortcuts to control.\n\n- `n`: Change the sort column to the next column\n- `p`: Change the sort column to the previous column\n- `a`: Change the sort order to ascending\n- `d`: Change the sort order to descending\n- `q`: Quit\n\n### Tree view\n\nIf `--tree` option is used, processes are sorted by dependency order and dependency tree is shown at left side.\n\n```console\nprocs --tree\n```\n\n![procs_tree](https://user-images.githubusercontent.com/4331004/55446692-9ff07900-55fb-11e9-8b66-a8432df0a8e1.png)\n\nIf `TreeSlot` column exists in config, dependency tree is shown at the slot.\n\n### Sort column\n\nColumn sort order can be changed by `--sorta` or `--sortd` option.\nThe last character of `--sorta` and `--sortd` means sort order: \"a\"scending and \"d\"escending.\n\nThe column for sort is selected by the option keyword.\nThe keyword is matched with column kind that is shown by `--list` option.\nIf `--sorta cputime`, column is sorted by `CpuTime` with ascending order.\nIf `--sortd rss`, column is sorted by `VmRss` with descending order.\nThe keyword is matched partially and case is ignored.\n\nThe default sort is specified by `[sort]` section in the [configuration file](#configuration).\n\n```console\nprocs --sortd cpu\n```\n\n![procs_sort](https://user-images.githubusercontent.com/4331004/55446704-ab43a480-55fb-11e9-81dc-e3ac1a1e2507.png)\n\n### Insert column\n\n`--insert` option inserts new column to the position of `Slot` column or `MultiSlot` column.\nThe column for insert is selected by the option keyword.\nThe keyword is the same as sort option.\nA `Slot` column can be used by an inserted column.\nIf many insertions are required, many `Slot` columns should be added.\nA `MultiSlot` column can be used by many inserted columns.\nIf there is a `MultiSlot`, all the remaining columns are inserted to the `MultiSlot`, and the subsequent `Slot` / `MultiSlot` is not used.\nUnused `Slot` / `MultiSlot` is not shown.\n\n### Shell completion\n\n`--gen-completion` option generates shell completion files under the current directory.\nThe following shells are supported.\n\n * `zsh`\n * `bash`\n * `fish`\n * `powershell`\n * `elvish`\n\n`--gen-completion-out` option generates shell completion to stdout.\nYou can source it directly on some shells.\n\n```console\nsource \u003c(procs --gen-completion-out bash)\n```\n\n## Configuration\n\n### Configuration path\n\nYou can change configuration by writing a configuration file.\nThere are some configuration examples in `config` directory of this repository.\n`config/large.toml` is the default configuration before procs v0.9.21.\n\nThe locations of the configuration file is OS-specific:\n\n * Linux: `~/.config/procs/config.toml`, `/etc/procs/procs.toml`\n * macOS: `~/Library/Preferences/com.github.dalance.procs/config.toml`, `/etc/procs/procs.toml`\n * Windows: `~/AppData/Roaming/dalance/procs/config/config.toml`\n\nFor compatibility, if `~/.procs.toml` exists, it will be preferred to\nthe OS-specific locations.\n\n### Specify a configuration from command line\n\n`--use-config` option can specify a built-in configuration.\n`--load-config` option can specify a configuration file path.\n\n### Configuration example\n\nThe complete example of a configuration file can be generated by `--gen-config` option.\n\n```toml\n[[columns]]\nkind = \"Pid\"\nstyle = \"BrightYellow|Yellow\"\nnumeric_search = true\nnonnumeric_search = false\n\n[[columns]]\nkind = \"Username\"\nstyle = \"BrightGreen|Green\"\nnumeric_search = false\nnonnumeric_search = true\nalign = \"Right\"\n\n[style]\nheader = \"BrightWhite|Black\"\nunit = \"BrightWhite|Black\"\ntree = \"BrightWhite|Black\"\n\n[style.by_percentage]\ncolor_000 = \"BrightBlue|Blue\"\ncolor_025 = \"BrightGreen|Green\"\ncolor_050 = \"BrightYellow|Yellow\"\ncolor_075 = \"BrightRed|Red\"\ncolor_100 = \"BrightRed|Red\"\n\n[style.by_state]\ncolor_d = \"BrightRed|Red\"\ncolor_r = \"BrightGreen|Green\"\ncolor_s = \"BrightBlue|Blue\"\ncolor_t = \"BrightCyan|Cyan\"\ncolor_z = \"BrightMagenta|Magenta\"\ncolor_x = \"BrightMagenta|Magenta\"\ncolor_k = \"BrightYellow|Yellow\"\ncolor_w = \"BrightYellow|Yellow\"\ncolor_p = \"BrightYellow|Yellow\"\n\n[style.by_unit]\ncolor_k = \"BrightBlue|Blue\"\ncolor_m = \"BrightGreen|Green\"\ncolor_g = \"BrightYellow|Yellow\"\ncolor_t = \"BrightRed|Red\"\ncolor_p = \"BrightRed|Red\"\ncolor_x = \"BrightBlue|Blue\"\n\n[search]\nnumeric_search = \"Exact\"\nnonnumeric_search = \"Partial\"\nlogic = \"And\"\n\n[display]\nshow_self = false\nshow_thread = false\nshow_thread_in_tree = true\ncut_to_terminal = true\ncut_to_pager = false\ncut_to_pipe = false\ncolor_mode = \"Auto\"\n\n[sort]\ncolumn = 0\norder = \"Ascending\"\n\n[docker]\npath = \"unix:///var/run/docker.sock\"\n\n[pager]\nmode = \"Auto\"\n```\n\n### `[[columns]]` section\n\n`[[columns]]` section defines which columns are used.\nThe first `[[columns]]` is shown at left side, and the last is shown at right side.\n\n| Key               | Value               | Default | Description                                                 |\n| ----------------- | ------------------- | ------- | ----------------------------------------------------------- |\n| kind              | See `kind` list     |         | Column type                                                 |\n| style             | See `style` list    |         | Column style                                                |\n| numeric_search    | true, false         | false   | Whether the column can be matched with numeric keywords     |\n| nonnumeric_search | true, false         | false   | Whether the column can be matched with non-numeric keywords |\n| align             | Left, Right, Center | Left    | Text alignment                                              |\n| max_width         | [Number]            |         | Maximum column width                                        |\n| min_width         | [Number]            |         | Minimum column width                                        |\n| header            | [String]            |         | Alternate header description                                |\n\n#### `kind` list\n\n| procs `kind`         | `ps` STANDARD FORMAT  | Description                                   | Linux | macOS | Windows | FreeBSD |\n| -------------------- | --------------------- | --------------------------------------------- | ----- | ----- | ------- | ------- |\n| Arch                 | -not supported-       | Architecture of binary (macOS specific)       |       | o     |         |         |\n| Ccgroup              | -not supported-       | Control group by compressed format            | o     |       |         |         |\n| Cgroup               | cgroup                | Control group                                 | o     |       |         |         |\n| Command              | args                  | Command with all arguments                    | o     | o     | o       | o       |\n| ContextSw            | -not supported-       | Context switch count                          | o     | o     |         | o       |\n| CpuTime              | cputime               | Cumulative CPU time                           | o     | o     | o       | o       |\n| Docker               | -not supported-       | Docker container name                         | o     | o     |         |         |\n| Eip                  | eip                   | Instruction pointer                           | o     |       |         |         |\n| ElapsedTime          | -not supported-       | Elapsed time                                  | o     | o     | o       | o       |\n| Env                  | `e` output modifier   | Environment variables                         | o     |       |         | o       |\n| Esp                  | esp                   | Stack pointer                                 | o     |       |         |         |\n| FileName             | comm                  | File name                                     | o     |       |         | o       |\n| Gid                  | egid                  | Group ID                                      | o     | o     | o       | o       |\n| GidFs                | fgid                  | File system group ID                          | o     |       |         |         |\n| GidReal              | rgid                  | Real group ID                                 | o     | o     |         | o       |\n| GidSaved             | sgid                  | Saved group ID                                | o     | o     |         | o       |\n| Group                | egroup                | Group name                                    | o     | o     | o       | o       |\n| GroupFs              | fgroup                | File system group name                        | o     |       |         |         |\n| GroupReal            | rgroup                | Real group name                               | o     | o     |         | o       |\n| GroupSaved           | sgroup                | Saved group name                              | o     | o     |         | o       |\n| InvoluntaryContextSw | -not supported-       | Involuntary context switch count              | o     |       |         | o       |\n| MajFlt               | maj_flt               | Major page fault count                        | o     | o     | o       | o       |\n| MinFlt               | min_flt               | Minor page fault count                        | o     | o     |         | o       |\n| MultiSlot            | -not supported-       | Slot for `--insert` option                    | o     | o     | o       | o       |\n| Nice                 | ni                    | Nice value                                    | o     | o     |         | o       |\n| Pgid                 | pgid                  | Process group ID                              | o     | o     |         | o       |\n| Pid                  | pid                   | Process ID ( or Thread ID sorrunded by `[]` ) | o     | o     | o       | o       |\n| Policy               | policy                | Scheduling policy                             | o     | o     |         |         |\n| Ppid                 | ppid                  | Parent process ID                             | o     | o     | o       | o       |\n| Priority             | pri                   | Priority                                      | o     | o     | o       | o       |\n| Processor            | psr                   | Currently assigned processor                  | o     |       |         | o       |\n| ReadBytes            | -not supported-       | Read bytes from storage                       | o     | o     | o       | o       |\n| RtPriority           | rtprio                | Real-time priority                            | o     |       |         |         |\n| SecContext           | label                 | Security context                              | o     |       |         |         |\n| Separator            | -not supported-       | Show `\\|` for column separation               | o     | o     | o       | o       |\n| Session              | sid                   | Session ID                                    | o     | o     |         | o       |\n| ShdPnd               | pending               | Pending signal mask for process               | o     |       |         | o       |\n| SigBlk               | blocked               | Blocked signal mask                           | o     |       |         | o       |\n| SigCgt               | caught                | Caught signal mask                            | o     |       |         | o       |\n| SigIgn               | ignored               | Ignored signal mask                           | o     |       |         | o       |\n| SigPnd               | pending               | Pending signal mask for thread                | o     |       |         |         |\n| Slot                 | -not supported-       | Slot for `--insert` option                    | o     | o     | o       | o       |\n| Ssb                  | -not supported-       | Speculative store bypass status               | o     |       |         |         |\n| StartTime            | start_time            | Starting time                                 | o     | o     | o       | o       |\n| State                | s                     | Process state                                 | o     | o     |         | o       |\n| TcpPort              | -not supported-       | Bound TCP ports                               | o     | o     |         |         |\n| Threads              | nlwp                  | Thread count                                  | o     | o     |         | o       |\n| TreeSlot             | -not supported-       | Slot for tree column                          | o     | o     | o       | o       |\n| Tty                  | tty                   | Controlling TTY                               | o     | o     |         | o       |\n| UdpPort              | -not supported-       | Bound UDP ports                               | o     | o     |         |         |\n| Uid                  | euid                  | User ID                                       | o     | o     | o       | o       |\n| UidFs                | fuid                  | File system user ID                           | o     |       |         |         |\n| UidLogin             | -not supported-       | Login user ID                                 | o     |       |         |         |\n| UidReal              | ruid                  | Real user ID                                  | o     | o     |         | o       |\n| UidSaved             | suid                  | Saved user ID                                 | o     | o     |         | o       |\n| UsageCpu             | %cpu                  | CPU utilization                               | o     | o     | o       | o       |\n| UsageMem             | %mem                  | Memory utilization                            | o     | o     | o       | o       |\n| User                 | euser                 | User name                                     | o     | o     | o       | o       |\n| UserFs               | fuser                 | File system user name                         | o     |       |         |         |\n| UserLogin            | -not supported-       | Login user name                               | o     |       |         |         |\n| UserReal             | ruser                 | Real user name                                | o     | o     |         | o       |\n| UserSaved            | suser                 | Saved user name                               | o     | o     |         | o       |\n| VmData               | -not supported-       | Data size                                     | o     |       |         | o       |\n| VmExe                | trs                   | Text segments size                            | o     |       |         | o       |\n| VmHwm                | -not supported-       | Peak resident set size                        | o     |       | o       | o       |\n| VmLib                | -not supported-       | Library code size                             | o     |       |         |         |\n| VmLock               | -not supported-       | Locked memory size                            | o     |       |         |         |\n| VmPeak               | -not supported-       | Peak virtual memory size                      | o     |       | o       |         |\n| VmPin                | -not supported-       | Pinned memory size                            | o     |       | o       |         |\n| VmPte                | -not supported-       | Page table entries size                       | o     |       |         |         |\n| VmRss                | rss                   | Resident set size                             | o     | o     | o       | o       |\n| VmSize               | vsz                   | Physical page size                            | o     | o     | o       | o       |\n| VmStack              | -not supported-       | Stack size                                    | o     |       |         | o       |\n| VmSwap               | -not supported-       | Swapped-out virtual memory size               | o     |       | o       |         |\n| VmTotal              | -not supported-       | Total virtual memory size                     | *[^*] | o     | *[^*]   | *[^*]   |\n| VoluntaryContextSw   | -not supported-       | Voluntary context switch count                | o     |       |         | o       |\n| Wchan                | wchan                 | Process sleeping kernel function              | o     |       |         | o       |\n| WorkDir              | -not supported-       | Current working directory                     | o     |       |         |         |\n| WriteByte            | -not supported-       | Write bytes to storage                        | o     | o     | o       | o       |\n\n[^*]: Alias for VmRss on these platforms\n\n#### `style` list\n\n- BrightBlack\n- BrightRed\n- BrightGreen\n- BrightYellow\n- BrightBlue\n- BrightMagenta\n- BrightCyan\n- BrightWhite\n- Black\n- Red\n- Green\n- Yellow\n- Blue\n- Magenta\n- Cyan\n- White\n- Color256\n- ByPercentage\n- ByState\n- ByUnit\n\nThere are some special styles like `ByPercentage`, `ByState`, `ByUnit`.\nThese are the styles for value-aware coloring.\nFor example, if `ByUnit` is chosen, color can be specified for each unit of value ( like `K`, `M`, `G`,,, ).\nThe colors can be configured in `[style.by_unit]` section.\n\nOther colors can be configured as the same as `color`.\n\n### `[style]` section\n\n`[style]` section defines colors of header, unit and each styles.\nThe available list of color is below.\n\n| Subsection    | Key       | Value            | Default                | Description          |\n| ------------- | --------- | ---------------- | ---------------------- | -------------------- |\n|               | header    | See `color` list | BrightWhite\\|Black     | Header color         |\n|               | unit      | See `color` list | BrightWhite\\|Black     | Unit color           |\n|               | tree      | See `color` list | BrightWhite\\|Black     | Tree color           |\n| by_percentage | color_000 | See `color` list | BrightBlue\\|Blue       | Color at   0% -  25% |\n| by_percentage | color_025 | See `color` list | BrightGreen\\|Green     | Color at  25% -  50% |\n| by_percentage | color_050 | See `color` list | BrightYellow\\|Yellow   | Color at  50% -  75% |\n| by_percentage | color_075 | See `color` list | BrightRed\\|Red         | Color at  75% - 100% |\n| by_percentage | color_100 | See `color` list | BrightRed\\|Red         | Color at 100% -      |\n| by_state      | color_d   | See `color` list | BrightRed\\|Red         | Color at `D` state   |\n| by_state      | color_r   | See `color` list | BrightGreen\\|Green     | Color at `R` state   |\n| by_state      | color_s   | See `color` list | BrightBlue\\|Blue       | Color at `S` state   |\n| by_state      | color_t   | See `color` list | BrightCyan\\|Cyan       | Color at `T` state   |\n| by_state      | color_z   | See `color` list | BrightMagenta\\|Magenta | Color at `Z` state   |\n| by_state      | color_x   | See `color` list | BrightMagenta\\|Magenta | Color at `X` state   |\n| by_state      | color_k   | See `color` list | BrightYellow\\|Yellow   | Color at `K` state   |\n| by_state      | color_w   | See `color` list | BrightYellow\\|Yellow   | Color at `W` state   |\n| by_state      | color_p   | See `color` list | BrightYellow\\|Yellow   | Color at `P` state   |\n| by_unit       | color_k   | See `color` list | BrightBlue\\|Blue       | Color at unit `K`    |\n| by_unit       | color_m   | See `color` list | BrightGreen\\|Green     | Color at unit `M`    |\n| by_unit       | color_g   | See `color` list | BrightYellow\\|Yellow   | Color at unit `G`    |\n| by_unit       | color_t   | See `color` list | BrightRed\\|Red         | Color at unit `T`    |\n| by_unit       | color_p   | See `color` list | BrightRed\\|Red         | Color at unit `P`    |\n| by_unit       | color_x   | See `color` list | BrightBlue\\|Blue       | Color at other unit  |\n\n#### `color` list\n\n- BrightBlack\n- BrightRed\n- BrightGreen\n- BrightYellow\n- BrightBlue\n- BrightMagenta\n- BrightCyan\n- BrightWhite\n- Black\n- Red\n- Green\n- Yellow\n- Blue\n- Magenta\n- Cyan\n- White\n- Color256\n\nColors can be configured by theme through `|`.\n\n```toml\nstyle = \"BrightWhite|Black\" # BrightWhite for dark theme and Black for light theme\nstyle = \"BrightWhite\"       # BrightWhite for both theme\n```\n\nThe first color is for dark theme, and the second is for light theme.\nIf only a color is specified, the color is applied to both theme.\n\n`Color256` can be specified by 0-255 value like below:\n\n```toml\nstyle = \"223|112\" # 223 for dark theme and 112 for light theme\nstyle = \"223\"     # 223 for both theme\n```\n\n### `[search]` section\n\n`[search]` section defines option for Keyword search.\n\n| Key               | Value                         | Default | Description                                             |\n| ----------------- | ----------------------------- | ------- | ------------------------------------------------------- |\n| numeric_search    | Exact, Partial                | Exact   | Whether numeric keywords match exactly or partially     |\n| nonnumeric_search | Exact, Partial                | Partial | Whether non-numeric keywords match exactly or partially |\n| logic             | And, Or, Nand, Nor            | And     | Logical operation between keywords                      |\n| case              | Smart, Insensitive, Sensitive | Smart   | Case sensitivity in search                              |\n\n#### `case`\n\n`case` is case sensitivity in search.\n\n- `Smart`: If keyword contains uppercase character, case sensitive search. Otherwise case insensitive search\n- `Insensitive`: case insensitive search\n- `Sensitive`: case sensitive search\n\n### `[display]` section\n\n`[display]` section defines option for output display.\n\n| Key                   | Value                 | Default          | Description                                                                  |\n| --------------------- | --------------------- | ---------------- | ---------------------------------------------------------------------------- |\n| show_self             | true, false           | false            | Whether the self process ( `procs` ) is shown                                |\n| show_self_parents     | true, false           | false            | Whether the parents which have self as the only child process are shown      |\n| show_thread           | true, false           | false            | Whether the thread information is shown ( Linux only )                       |\n| show_thread_in_tree   | true, false           | true             | Whether the thread information is shown in tree mode ( Linux only )          |\n| show_parent_in_tree   | true, false           | true             | Whether the parent process is shown in tree mode                             |\n| show_children_in_tree | true, false           | true             | Whether the children processes are shown in tree mode                        |\n| show_header           | true, false           | true             | Whether header row is shown                                                  |\n| show_footer           | true, false           | false            | Whether footer row is shown                                                  |\n| show_kthreads         | true, false           | true             | Whether processes which belong to kthread are shown ( Linux only )           |\n| cut_to_terminal       | true, false           | true             | Whether output lines are truncated for output into terminal                  |\n| cut_to_pager          | true, false           | false            | Whether output lines are truncated for output into pager                     |\n| cut_to_pipe           | true, false           | false            | Whether output lines are truncated for output into pipe                      |\n| color_mode            | Auto, Always, Disable | Auto             | The default behavior of output coloring without `--color` commandline option |\n| separator             | [String]              | │                | String used as Separator                                                     |\n| ascending             | [String]              | ▲                | Ascending sort indicator                                                     |\n| descending            | [String]              | ▼                | Descending sort indicator                                                    |\n| tree_symbols          | [String; 5]           |  [│, ─, ┬, ├, └] | Symbols used by tree view                                                    |\n| abbr_sid              | true, false           | true             | Whether machine SID is abbreviated ( Windows only )                          |\n| theme                 | Auto, Dark, Light     | Auto             | Default theme                                                                |\n\nIf `color_mode` is `Auto`, color is enabled for terminal and pager, disabled for pipe.\n\nIf `theme` is `Auto`, theme is detected from terminal automatically.\nSome terminal don't support the automatic detection, so `Dark` or `Light` can be specified explicitly.\n\n#### `abbr_sid`\n\nWindows SID is too long, so it is abbreviated by default.\nIf `abbr_sid` is `false`, SID is fully shown like below:\n\n```text\nS-1-5-21-789457439-2186958450-1652286173-1001\n```\n\nIf `abbr_sid` is `true`, SID is shown like below:\n\n```text\nS-1-5-21-...-1001\n```\n\n\n### `[sort]` section\n\n`[sort]` section defines the column used for sort and sort order.\n\n| Key    | Value                 | Default   | Description                     |\n| ------ | --------------------- | --------- | ------------------------------- |\n| column | [Number]              | 0         | Column number to used for sort  |\n| order  | Ascending, Descending | Ascending | Sort order                      |\n\nIf `column` is 0, value is sorted by the left column.\n\n### `[docker]` section\n\n`[docker]` section defines how to communicate to docker daemon.\n\n| Key  | Value  | Default                     | Description                         |\n| ---- | ------ | --------------------------- | ----------------------------------- |\n| path | [Path] | unix:///var/run/docker.sock | UNIX domain socket to docker daemon |\n\n### `[pager]` section\n\n`[pager]` section defines the behavior of pager.\n\n| Key          | Value                 | Default  | Description                                                              |\n| ------------ | --------------------- | -------- | ------------------------------------------------------------------------ |\n| mode         | Auto, Always, Disable | Auto     | The default behavior of pager usage without `--pager` commandline option |\n| detect_width | true, false           | false    | Whether `auto` mode detects terminal width overflow                      |\n| use_builtin  | true, false           | false    | Whether built-in pager is used                                           |\n| command      | [Command]             | less -SR | Pager command                                                            |\n\nIf `mode` is `Auto`, pager is used only when output lines exceed terminal height.\nDefault pager is `less -SR` ( if `less` is not found, `more -f` ).\n","funding_links":["https://github.com/sponsors/dalance"],"categories":["Rust","应用","\\*nix/\\*nux","System Monitor","Applications","Command Line","应用程序 Applications","Tech","cli","\u003ca name=\"core\"\u003e\u003c/a\u003ecore","应用 Applications","终端","命令行工具","Terminal","Tools","语言资源库","系统工具","\u003ca name=\"monitor-top\"\u003e\u003c/a\u003eProcess viewers and monitoring (alternatives to top)","Linux","Modern Unix Replacements","Other"],"sub_categories":["System tools","System","Dependency Management","系统工具 System tools","Tools","网络服务_其他","Smart Shell","Rust","系统工具","rust","Terminal utils"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalance%2Fprocs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdalance%2Fprocs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdalance%2Fprocs/lists"}