有時候某個軟體卡死,想直接Kill掉。
1.ps -ef 或者 ps -aux 檢視目前所有的程序:
xxxx:project/ $ ps -ef [0:32:26]
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Sep13 ? 00:00:00 /sbin/init
root 2 0 0 Sep13 ? 00:00:00 [kthreadd]
root 3 2 0 Sep13 ? 00:00:00 [ksoftirqd/0]
root 5 2 0 Sep13 ? 00:00:00 [kworker/0:0H]
root 7 2 0 Sep13 ? 00:00:02 [rcu_sched]
......
2. kill -s 9 process_id (-s means signal )
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 34032 4592 ? Ss Sep13 0:00 /sbin/init
PID is the processID
3. ps -ef或者ps -aux 兩者列出來的程序都比較多,我們可以過濾。然後找到pid直接kill掉該程序。
xxxx:project/ $ ps -ef | grep firefox [0:39:56]
xxxx 3027 1753 1 Sep13 ? 00:02:09 /usr/lib/firefox/firefox
xxxx 12604 9060 0 00:40 pts/1 00:00:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=.cvs --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn firefox
4. pgrep firefox pgrep 是專門用于程序查詢的
xxxx:project/ $ pgrep firefox [0:41:26]
3027
如果這裡能直接查出pid則,我們後面使用管道符号,直接幹掉該程序
1)pgrep firefox | xargs kill -s 9
或者
2)kill -s 9 'grep firefox'
或者
3)pkill -9 firefox
5. 使用 pidof 查詢
xxxx:project/ $ pidof firefox [0:43:01]
3027
6.ps -ef|grep firefox|grep -v grep|cut -c 9-15|xargs kill -s 9
xxxx:project/ $ ps -ef|grep firefox|grep -v grep|cut -c 9-15|xargs kill -s 9
各種信号的含義:常見的有signal 11 / 9 / 6 / 3 android裡面crash特别是系統級别的會常見。
Signal Description Signal number on Linux x86[1]
SIGABRT Process aborted 6
SIGALRM Signal raised by alarm 14
SIGBUS Bus error: "access to undefined portion of memory object" 7
SIGCHLD Child process terminated, stopped (or continued*) 17
SIGCONT Continue if stopped 18
SIGFPE Floating point exception: "erroneous arithmetic operation" 8
SIGHUP Hangup 1
SIGILL Illegal instruction 4
SIGINT Interrupt 2
SIGKILL Kill (terminate immediately) 9
SIGPIPE Write to pipe with no one reading 13
SIGQUIT Quit and dump core 3
SIGSEGV Segmentation violation 11
SIGSTOP Stop executing temporarily 19
SIGTERM Termination (request to terminate) 15
SIGTSTP Terminal stop signal 20
SIGTTIN Background process attempting to read from tty ("in") 21
SIGTTOU Background process attempting to write to tty ("out") 22
SIGUSR1 User-defined 1 10
SIGUSR2 User-defined 2 12
SIGPOLL Pollable event 29
SIGPROF Profiling timer expired 27
SIGSYS Bad syscall 31
SIGTRAP Trace/breakpoint trap 5
SIGURG Urgent data available on socket 23
SIGVTALRM Signal raised by timer counting virtual time: "virtual timer expired" 26
SIGXCPU CPU time limit exceeded 24
SIGXFSZ File size limit exceeded 25
BLOG REFERENCE:
blog.csdn.net/andy572633/article/details/7211546
Linux config samba:
http://my.oschina.net/junn/blog/171388