linux 第九章:进程管理

1、打印进程
[root@localhost program_test]# ps -e | head
  PID TTY          TIME CMD
    1 ?        00:00:03 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 migration/0
    4 ?        00:00:00 ksoftirqd/0
    5 ?        00:00:00 migration/0
    6 ?        00:00:00 watchdog/0
    7 ?        00:00:00 events/0
    8 ?        00:00:00 cgroup
    9 ?        00:00:00 khelper

2、top 占用CPU最多的进程列表
[root@localhost program_test]# top
top - 23:45:17 up  1:12,  5 users,  load average: 0.00, 0.00, 0.00
Tasks: 153 total,   1 running, 143 sleeping,   9 stopped,   0 zombie
Cpu(s):  0.3%us,  0.3%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.3%hi,  0.0%si,  0.0%st
Mem:   1030528k total,   377184k used,   653344k free,    32588k buffers
Swap:  2064376k total,        0k used,  2064376k free,   170968k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                  
4429 root      20   0  2704 1140  880 R  0.7  0.1   0:00.12 top                                                                                                      
   21 root      20   0     0    0    0 S  0.3  0.0   0:01.63 ata_sff/0                                                                                                
2462 yy       20   0 73100  23m  18m S  0.3  2.3   0:12.11 vmtoolsd                                                                                                 
    1 root      20   0  2900 1436 1212 S  0.0  0.1   0:03.10 init      

3、列出占CPU最多的进程
[root@localhost program_test]# ps -eo comm,pcpu --sort -pcpu | head
COMMAND         %CPU
Xorg             0.5
vmtoolsd         0.2
vmtoolsd         0.2
init             0.0
kthreadd         0.0
migration/0      0.0
ksoftirqd/0      0.0
migration/0      0.0
watchdog/0       0.0

4、打印出bash进度对应的pid
[root@localhost program_test]# ps -C bash -o pid=
2624
2650
2696
2732
2759
3842

//与下面的命令等价
[root@localhost program_test]# ps -aux | grep bash | awk 'BEGIN { FS=" " }  $11=="bash" { print $2 }'
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
2624
2650
2759

5、列举出用的信号:
[root@localhost program_test]# kill -l
1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2

6、常用信号
1)SIGHUP 1 --对控制进程和终端进行挂起检测;
2)SIGINT  2--按下Ctrl+C发送信号
3)SIGKILL 9-- 强杀进程
4)SIGTERM 15--默认用于终止进程
5)SIGTSTP 20--按下Ctrl+Z发送信号

7、通过进程名杀死进程
[yy@localhost ~]$ killall -9 su
su: no process killed

8、捕获并响应信号测试 trap
[root@localhost ~]$ cat singlehandle.sh | sed '/^$/d'
#!/bin/bash
function handler()
{
        echo Hey, received signal : SIGINT
}
echo My Process ID is $$
trap 'handler' SIGINT
while true;
do 
sleep 1
done


9、
which //找到某个命令的位置
whereis   //不仅返回命令的路径,还打印出对应命令手册的位置
file         //确定文件类型
whatis    //输出作为参数命令的简短信息
uptime   //系统可运行进程总量的平均值

10、
hostname //获取主机名
//获取分区信息
[yy@localhost ~]$ cat /proc/partitions 
major minor  #blocks  name

   8        0   20971520 sda
   8        1     307200 sda1
   8        2   18598912 sda2
   8        3    2064384 sda3
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值