Linux:ps + awk + kill
在Linux的使用过程中,有时候你可能会涉及到批量的杀掉一组进程的操作:
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
[oracle@SZ02VM-024 ~]$ ps -ef | grep -v grep | grep --color LOCAL=NO oracle 3425 1 0 Jul14 ? 00:00:10 oracleorcl (LOCAL=NO) oracle 6434 1 0 Jul15 ? 00:00:10 oracleorcl (LOCAL=NO) oracle 9112 1 0 Jun18 ? 00:03:43 oracleorcl (LOCAL=NO) oracle 9120 1 0 Jun18 ? 00:03:53 oracleorcl (LOCAL=NO) oracle 9171 1 0 Jun21 ? 00:03:13 oracleorcl (LOCAL=NO) oracle 9378 1 0 Jun18 ? 00:06:38 oracleorcl (LOCAL=NO) oracle 9570 1 0 Jun18 ? 00:01:05 oracleorcl (LOCAL=NO) oracle 9572 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9576 1 0 Jun18 ? 00:00:09 oracleorcl (LOCAL=NO) oracle 9620 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9622 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9624 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9626 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9628 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9630 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9632 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9634 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9636 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9638 1 0 Jun18 ? 00:00:45 oracleorcl (LOCAL=NO) oracle 9649 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9651 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9653 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9655 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9657 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9659 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9661 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9663 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9665 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 9667 1 0 Jun18 ? 00:00:45 oracleorcl (LOCAL=NO) oracle 9704 1 0 Jun18 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 10294 1 0 Jun18 ? 00:05:30 oracleorcl (LOCAL=NO) oracle 13609 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13611 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13613 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13615 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13617 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13619 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13621 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13623 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 13625 1 0 00:00 ? 00:00:00 oracleorcl (LOCAL=NO) oracle 27869 1 0 Jul14 ? 00:00:12 oracleorcl (LOCAL=NO) oracle 32206 1 0 Jul05 ? 00:02:15 oracleorcl (LOCAL=NO) oracle 32230 1 0 Jul05 ? 00:00:55 oracleorcl (LOCAL=NO) [oracle@SZ02VM-024 ~]$ |
如果你不想写shell代码,堆for循环,你有更方便的方式:
1 2 3 4 |
[oracle@SZ02VM-024 ~]$ ps -ef | grep -v grep | grep --color LOCAL=NO | awk '{print $2}' | xargs kill -9 [oracle@SZ02VM-024 ~]$ [oracle@SZ02VM-024 ~]$ ps -ef | grep -v grep | grep --color LOCAL=NO [oracle@SZ02VM-024 ~]$ |
这样,就达成目标了。
————————————
Done。