kill用户dongxu的所有进程
ps -ef|grep dongxu|grep -v grep|cut -c 7-15|xargs kill -9
管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的几个命令:
“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。
“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
“xargs kill -9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该命令。“kill -9”会强行杀掉指定进程,这样就成功清除了oracle的所有远程连接进程。其它类似的任务,只需要修改“grep LOCAL=NO”中的关键字部分就可以了。
###################################################################################
root@capitek1 ~]#ps -ef|grep mysql
root 11131 1 0 12:30 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/capitek1.pid
mysql 11186 11131 0 12:30 pts/0 00:00:00 /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/mysql/capitek1.err --pid-file=/var/lib/mysql/capitek1.pid
root 14140 1 0 13:06 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/capitek1.pid
mysql 14198 14140 0 13:06 pts/0 00:00:00 /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/mysql/capitek1.err --pid-file=/var/lib/mysql/capitek1.pid
root 14448 14282 0 13:07 pts/1 00:00:00 grep mysql
[root@capitek1 ~]#pgrep mysqld #有4个mysqld pid
11131
11186
14140
14198
[root@capitek1 ~]#kill -9 `pgrep mysqld` #这里利用``,里面pgrep产生多个pid
[root@capitek1 ~]#pgrep mysqld
[root@capitek1 ~]#ps -ef|grep mysql
root 14529 14282 0 13:08 pts/1 00:00:00 grep mysql
###################################################################################