zoukankan      html  css  js  c++  java
  • linnux 3

    kill [信号代码] 进程ID

    以优雅的方式结束进程
    # kill -l PID
    -l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。 

    # kill -HUP PID
    该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。

    TERM信号
    给父进程发送一个TERM信号,试图杀死它和它的子进程。
    # kill -TERM PPID

    对于僵尸进程,可以用kill -9 来强制终止退出;
    比如一个程序已经彻底死掉,如果kill 不加信号强度是没有办法退出,最好的办法就是加信号强度 -9 

     

     pkill

    pkill 和killall 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉。


    pkill -kill -t     踢人。。。

    xkill 是在桌面用的杀死图形界面的程序 ?

     pgrep     有点像是 ps+grep的缩写    pgrep相当于 ps –eo pid,cmd | awk ‘{print $1,$2}’ | grep KeyWord

    pgrep查找的是程序名,不包括其参数

    如下,参数里包括要查找的参数,而程序名中不包括,所有没查找到。

    ps     ps的参数实在太多,man ps一下,初学的时候也看不明白。没时间仔细去看。

    每天用的ps -ef 中的ef 分别是什么意思?

    e everything

    f full msg

    # ps zxvqwe
    ERROR: Unsupported option (BSD syntax)
    ********* simple selection ********* ********* selection by list *********
    -A all processes -C by command name
    -N negate selection -G by real group ID (supports names)
    -a all w/ tty except session leaders -U by real user ID (supports names)
    -d all except session leaders -g by session OR by effective group name
    -e all processes -p by process ID
    T all processes on this terminal -s processes in the sessions given
    a all w/ tty, including other users -t by tty
    g OBSOLETE -- DO NOT USE -u by effective user ID (supports names)
    r only running processes U processes for specified users
    x processes w/o controlling ttys t by tty
    *********** output format ********** *********** long options ***********
    -o,o user-defined -f full --Group --User --pid --cols --ppid
    -j,j job control s signal --group --user --sid --rows --info
    -O,O preloaded -o v virtual memory --cumulative --format --deselect
    -l,l long u user-oriented --sort --tty --forest --version
    -F extra full X registers --heading --no-heading --context
    ********* misc options *********
    -V,V show version L list format codes f ASCII art forest
    -m,m,-L,-T,H threads S children in sum -y change -l format
    -M,Z security data c true command name -c scheduling class
    -w,w wide output n numeric WCHAN,UID -H process hierarchy

    Usage: pgrep [-cflvx] [-d DELIM] [-n|-o] [-P PPIDLIST] [-g PGRPLIST] [-s SIDLIST]    v reverse的意思, x 正则匹配   c count  l list pid  u user  d  delimiter for delimit
    [-u EUIDLIST] [-U UIDLIST] [-G GIDLIST] [-t TERMLIST] [PATTERN]

    # pgrep -l java    --- 加l参数看起来比较友好
    31409 java
    31447 java
    # pgrep java
    31409
    31447

    # pgrep -d ZZZ java    以ZZZ分隔
    23095ZZZ23947

    http://www.cnblogs.com/lwgdream/p/3407821.html

    -l 同时显示进程名和PID

    -o 当匹配多个进程时,显示进程号最小的那个

    -n 当匹配多个进程时,显示进程号最大的那个

    注:进程号越大,并不一定意味着进程的启动时间越晚

    NAME
    regcomp, regexec, regerror, regfree - POSIX regex functions    c函数都会有帮助文档的。。

    SYNOPSIS
      #include <sys/types.h>
      #include <regex.h>

    int regcomp(regex_t *preg, const char *regex, int cflags);

    int regexec(const regex_t *preg, const char *string, size_t nmatch,
    regmatch_t pmatch[], int eflags);

    size_t regerror(int errcode, const regex_t *preg, char *errbuf,
    size_t errbuf_size);

    void regfree(regex_t *preg);

    STRING(3) Linux Programmer's Manual STRING(3)

    NAME
    strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex - string operations

    SYNOPSIS
    #include <strings.h>

    int strcasecmp(const char *s1, const char *s2);

    int strncasecmp(const char *s1, const char *s2, size_t n);

    char *index(const char *s, int c);

    char *rindex(const char *s, int c);

    #include <string.h>

    char *strcat(char *dest, const char *src);

    char *strchr(const char *s, int c)

    。。。。

     一个是 Linux User's Manual     一个是 Linux Programmer's Manual

    pstree    这是一个神奇的命令,不过,我现在还不能完全看懂。
      
    树状显示进程信息,相当于 ps -H
        -a 显示完整命令及参数
        -c 重复进程分别显示
        -c 显示进程ID PID
        -n 按 PID 排列进程

    nohup <命令>
    将任务提交到后台,输出附加到 ~/nohup.out 文件。即便用户退出登录,提交的命令仍继续执行。

    <命令> &
    背景执行此命令,如果用户退出登录,则命令停止执行

    <命令1> ; <命令2> ; ......
    命令队列,从左向右,依次执行以 ; 分隔的命令

    <命令1> && <命令2> && ......
    命令队列,从左向右,依次执行以 && 分隔的命令。前一个命令执行成功,后一个命令才能执行

  • 相关阅读:
    dispatch_semaphore
    dispatch_set_target_queue
    iOS charles支持https抓包
    ios8 毛玻璃效果
    工程里配置.xconfig文件
    线程安全的nsmutabledictionary(读weex代码)
    关于信号量以及多线程的代码
    dispatch_set_target_queue测试
    dyld: Library not loaded问题解决
    iOS图片上加标签或者水印
  • 原文地址:https://www.cnblogs.com/FlyAway2013/p/3658885.html
Copyright © 2011-2022 走看看