nixos-config/kill-old-mosh

16 lines
406 B
Bash
Executable file

#!/usr/bin/env bash
mysession=$(cat /proc/self/sessionid)
count=0
while read pid _; do
session=$(cat /proc/$pid/sessionid)
if [ "$mysession" != "$session" ]; then
kill $pid
count=$((count + 1))
fi
done <<<$(ps -C mosh-server -o pid=,etimes= | sort -k 2 -r)
if [[ $count -eq 0 ]]; then
echo 2>&1 "No stale mosh session found"
else
echo 2>&1 "$count stale mosh session(s) killed"
fi