File: kdekillall

package info (click to toggle)
kde-dev-scripts 4%3A25.04.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 3,612 kB
  • sloc: perl: 15,615; lisp: 5,627; sh: 4,560; python: 3,892; ruby: 1,386; makefile: 13; sed: 9
file content (28 lines) | stat: -rwxr-xr-x 909 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#! /bin/sh

case $1 in
    -*) signal=$1; shift;;
esac
if [ $# = 0 ]; then
    echo "Usage: $0 [-<signal>] <process>"
    echo 'Kills the process "kdeinit4: <process> with signal <signal>"'
	echo "if <signal> is not specified, it defaults to SIGTERM,"
	echo "see kill -l for a list of possible signals"
else
    list=$(ps auwx | grep $USER | awk "/[k]deinit[4|]: $1/ {print \$2}")
    if test -z "$list"; then
        # on newer Linux kernels (>= 2.6.10) KDE is able to use 
        # prctl(PR_SET_NAME) to change the process name...
        list=$(ps auwx | grep $USER | awk "/\[kdeinit[4|]\] $1/ {print \$2}")
    fi
    if test -z "$list"; then
        # with KDE 3.4 we changed the view again...
        list=$(ps auwx | grep $USER | awk "/$1 \[kdeinit[4|]\]/ {print \$2}")
    fi
    if test -n "$list"; then 
        kill $signal $list
    else
        echo 'No process killed'
        exit 1
    fi
fi