Find (and kill) long running processes by name and arguments
Project description
dieyoung
Find / kill very long running processes by name, args and age
Installation
recommended way:
pipx install dieyoung
or (better if inside python virtualenv):
pip install dieyoung
your system may have pip3
instead of pip
.
Find processes by name / arguments, three different modes
See all my ssh sessions:
$ dieyoung ssh
732333 8h ssh alv
742297 7h ssh jul
745335 6h ssh mx
875490 38m ssh -i /home/xenon/.ssh/id_ed25519 mx
880910 25m ssh mx -i /home/xenon/.ssh/id_ed25519
Format is simple: pid, age, cmdline
Now, lets suppose we want to find only ssh to mx:
$ dieyoung ssh mx
745335 6h ssh mx
875490 39m ssh -i /home/xenon/.ssh/id_ed25519 mx
880910 25m ssh mx -i /home/xenon/.ssh/id_ed25519
Three sessions are found, because each of them has "ssh" and "mx" in cmdline (in any order). This is how --mode any
works (default mode), processes matches our pattern if all words from pattern are found anywhere in process cmdline, even if there are other arguments.
--mode start
: First words of cmdline must match pattern, e.g.
$ dieyoung -m start -- ssh -i
875490 39m ssh -i /home/xenon/.ssh/id_ed25519 mx
But this filter will not find process ssh mx -i /home/xenon/.ssh/id_ed25519
(because ssh mx
is not ssh -i
).
Note, we used --
to separate PATTERN (ssh -i
) from dieyoung arguments.
--mode full
: process cmdline must fully match pattern, e.g.
$ dieyoung -m full -- ssh -i /home/xenon/.ssh/id_ed25519 mx
875490 40m ssh -i /home/xenon/.ssh/id_ed25519 mx
Filter by age, user and executable
To find processes older then some age use -a
/ --age
option, like -a 1h30m
(to find processes older then 1 hour and 30minutes)
--exe PATH
to find only processes with this executable, e.g. if you want to find /usr/bin/php
but not /opt/php/7.4/bin/php
.
--user USERNAME
to find only processes of this user.
Kill / Terminate processes
After you found processes, you may kill it manually with kill
command, or use built-in feature. Add --terminate
option to gracefully send SIGTERM to each matching process or --kill
to send SIGKILL
(like kill -9 <pid>
).
Inspect more details of processes
Add -j
/ --json
to show more info about processes
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dieyoung-0.0.5.tar.gz
.
File metadata
- Download URL: dieyoung-0.0.5.tar.gz
- Upload date:
- Size: 5.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.27.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34420ede5178165140967f632a055c330e4b6d8de223261efefa24a3a0f49a23 |
|
MD5 | 5755676446314a0e8deb6f1432085fac |
|
BLAKE2b-256 | 5b4441ee9e037794af6493cc0c14584686421a6a4e8593aad555de7f80086fa5 |
File details
Details for the file dieyoung-0.0.5-py3-none-any.whl
.
File metadata
- Download URL: dieyoung-0.0.5-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.27.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ed0c68a9c8a5cbe6127102e27807cdb6da23b45379f5d9725e94908f9e1e27f |
|
MD5 | ce171b2e4148ed4d13207f42efde5c10 |
|
BLAKE2b-256 | ec02b8ef6e66fd77d532e737037a9b5577beb881091b241aa264c43ea68ca6d1 |