精华内容
下载资源
问答
  • linux根据PID查找进程所在目录路径
    2021-10-15 16:24:50

    ps -aux |grep -v grep|grep PID

    更多相关内容
  • Liunx中通过进程查找进程PID可以通过 pidof [进程名] 来查找。反过来 ,相同通过PID查找进程名则没有相关命令。在linux根目录中,有一个/proc的VFS(虚拟文件系统),系统当前运行的所有进程都对应于该目录下的一个...
  • 工作环境中遇到网络不正常,检测是某服务器异常往外发送数据包,使用netstat命令查看,发现有程序。这篇文章主要介绍了linux根据进程PID查找启动程序的全路径,需要的朋友可以参考下
  • 本篇文章主要介绍了Linux中怎么通过PID号找到对应的进程名及所在目录方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 如果您知道进程名称,则可以使用 ps 命令轻松获取其进程 ID (PID): ps -p PID -o comm= ps 命令用于进程相关的操作,在上面的命令中,-p PID提供进程 ID 并-o comm=要求它输出与给定 PID 关联的命令。 这是一个...

    如果您知道进程的名称,则可以使用 ps 命令轻松获取其进程 ID (PID):

    ps -p PID -o comm=
    

    ps 命令用于进程相关的操作,在上面的命令中,-p PID提供进程 ID 并-o comm=要求它输出与给定 PID 关联的命令。

    这是一个实际的例子:

    老实说,很难记住奇怪的ps -p PID -o comm=语法,如果是这种情况,您可以查看 ps 命令的手册页或使用其他方式获取详细信息。

    您可以使用 ps 命令或 top 命令列出所有正在运行的进程,并根据需要记下进程 ID 和进程名称。

    如果您知道 PID,则可以简单地使用 grep 命令过滤输出并获取该 PID 的详细信息:

    ps aux | grep PID
    

    但如下图所示,输出提供了其他详细信息以及进程名称。

    如果您手动阅读它,那不是问题,但是,如果您必须在脚本中使用它,这可能是个问题。

    ps -p PID -o comm=是更好的命令。

    额外提示:既然我们在谈论进程名称和 PID,让我快速向您展示相反的方法,即从进程名称中找到 PID。

    有一个名为的专用命令pidof,如果您知道确切的进程名称,则可以像这样使用它:

    pidof exact_process_name
    
    展开全文
  • 以上这篇Linux查找占用的端口,并杀死进程的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。 您可能感兴趣的文章:linux 查看端口占用命令实例详解Linux查看端口、进程...
  • Linux通过PID号找到对应的进程

    千次阅读 2021-06-15 11:48:08
    有时候通过top命令查看Linux的系统运行情况时,会发现一些进程占用的CPU或者内存有点大,所以这时候想知道到底是哪个进程占用了这么多的CPU或者内存,分享下步骤: top命令查看系统运行情况,如下: 会发现cpu...

    有时候通过top命令查看Linux的系统运行情况时,会发现一些进程占用的CPU或者内存有点大,所以这时候想知道到底是哪个进程占用了这么多的CPU或者内存,分享下步骤:

    1. top命令查看系统运行情况,如下:
      在这里插入图片描述

    会发现cpu此时利用率已经到190%了,不过服务器是多核的,因此还能正常运行,记下该进程PID为497549。

    1. 进入/proc/PID文件夹,然后ls -l查看下该文件夹下的目录,主要情况如下:

    在这里插入图片描述
    上图中的1代表进程名,2代表进程类型。

    因此大致可以推测是es服务用了这么多的cpu,之后看情况再决定是不是要做优化。

    展开全文
  • 因为存在多进程和线程,Linux下同一个进程名有可能有多个进程号。下面的程序可以一次获得同一进程名的所有进程号。process.h#ifndef __PROCESS_H__#define __PROCESS_H__char *basename(const char *path);int get_...

    因为存在多进程和线程,Linux下同一个进程名有可能有多个进程号。下面的程序可以一次获得同一进程名的所有进程号。

    process.h

    #ifndef __PROCESS_H__

    #define __PROCESS_H__

    char *basename(const char *path);

    int get_pid_by_name(const char* process_name, pid_t pid_list[], int list_size);

    int is_process_exist(const char* process_name);

    #endif /* __PROCESS_H__ */

    process.c (使用/proc/pid/exe 查找进程名有时候会有问题,比如busybox中的命令,查到的是busybox)

    修改为使用/proc/pid/cmdline来查找。

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    char *basename(const char *path)

    {

    register const char *s;

    register const char *p;

    p = s = path;

    while (*s) {

    if (*s++ == '/') {

    p = s;

    }

    }

    return (char *) p;

    }

    /* find all pid of process by name, only compare base name of pid_name

    * pid_list: caller malloc pid_t array

    * list_size: the size of pid_list

    * RETURN:

    * < 0: error number

    * >=0: how many pid found, pid_list will store the founded pid

    */

    int get_pid_by_name(const char* process_name, pid_t pid_list[], int list_size)

    {

    #define MAX_BUF_SIZE 256

    DIR *dir;

    struct dirent *next;

    int count=0;

    pid_t pid;

    FILE *fp;

    char *base_pname = NULL;

    char *base_fname = NULL;

    char cmdline[MAX_BUF_SIZE];

    char path[MAX_BUF_SIZE];

    if(process_name == NULL || pid_list == NULL)

    return -EINVAL;

    base_pname = basename(process_name);

    if(strlen(base_pname) <= 0)

    return -EINVAL;

    dir = opendir("/proc");

    if (!dir)

    {

    return -EIO;

    }

    while ((next = readdir(dir)) != NULL) {

    /* skip non-number */

    if (!isdigit(*next->d_name))

    continue;

    pid = strtol(next->d_name, NULL, 0);

    sprintf(path, "/proc/%u/cmdline", pid);

    fp = fopen(path, "r");

    if(fp == NULL)

    continue;

    memset(cmdline, 0, sizeof(cmdline));

    if(fread(cmdline, MAX_BUF_SIZE - 1, 1, fp) < 0){

    fclose(fp);

    continue;

    }

    fclose(fp);

    base_fname = basename(cmdline);

    if (strcmp(base_fname, base_pname) == 0 )

    {

    if(count >= list_size){

    break;

    }else{

    pid_list[count] = pid;

    count++;

    }

    }

    }

    closedir(dir) ;

    return count;

    }

    /* If process is existed, return true */

    int is_process_exist(const char* process_name)

    {

    pid_t pid;

    return (get_pid_by_name(process_name, &pid, 1) > 0);

    }

    main.c

    #include

    #include

    #include "process.h"

    #define MAX_PID_NUM     32

    int main(int argc, char* argv[])

    {

    char* process;

    int ret = 0;

    int n;

    pid_t pid[MAX_PID_NUM];

    if(argc < 2)

    process = argv[0];

    else

    process = argv[1];

    ret = get_pid_by_name(process, pid, MAX_PID_NUM);

    printf("process '%s' is existed? (%d): %c\n", process, ret, (ret > 0)?'y':'n');

    for(n=0;n

    printf("%u\n", pid[n]);

    }

    return ret;

    }

    Makefile:

    PROG=check_process

    OBJS=process.o main.o

    #CFLAGS = -g -ggdb

    all:$(PROG)

    check_process:$(OBJS)

    $(CC) -o $@ $^ $(LDFLAGS)

    %.o:%.c

    $(CC) -c -o $@ $(CFLAGS) $<

    clean:

    rm -rf $(PROG) *.o

    展开全文
  • 您通常会在Redhat / CentOS风格的系统上的/ var / run /中找到daemonized进程PID文件.除此之外,您始终可以查看进程init脚本.例如,SSH守护程序是使用/etc/init.d/sshd中的脚本启动的.有时会在那里定义PID(搜索pid,...
  • 当你的Linux系统服务器运行缓慢时,该怎么办?您可能做的第一件事是检查网络连接。然后需要查明哪些服务/...或者,您也可以使用一些命令按名称查找进程ID (PID)。有两个命令,每个Linux管理员都应该知道的。我想演...
  • 使用linux操做系统,不免遇到一些软件"卡壳"的问题,这时就须要使用linux下强大...首先,咱们须要使用linux下另一个ps命令查找进程相关的PID号:ps aux | grep program_filter_wordps a 显示现行终端机下的全部程...
  • Linux通过PID查看进程完整信息

    万次阅读 2018-12-14 10:15:52
    通过ps及top命令查看进程信息时,只能查到相对路径,查不到的...Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径...
  • Linux通过PID查看进程完整信息[root@gsidc-4q-saas23 ~]# netstat -anp|grep 8282tcp 0 0 :::8282 :::* LISTEN 16923/java[root@gsidc-4q-saas23 ~]# ps -ef|gre...
  • Linux根据进程名称获取pid的方法

    千次阅读 2019-11-21 20:07:44
    以下通过两种方法来根据进程名称获取pid 方法一 最简单的方法是使用 pidof命令 用法:pidof process_name 示例 官网的详细用法如下: NAME pidof -- find the process ID of a running program. ...
  • [linux] 查看进程PID以及进程详细信息

    千次阅读 2022-04-11 13:32:15
    Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径,通过ll或ls–l命令即可查看。 ll/proc/PID cwd符号链接的是...
  • Linux根据端口号查看进程PID

    千次阅读 2021-05-08 23:29:07
    1、命令lsof,以查找占用端口80为例,用法如下:[root@localhost nginx]# lsof -i:80以上为没有进程占用80端口,[root@localhost sbin]# lsof -i:80COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEnginx 8246 ...
  • linux查找进程

    千次阅读 2021-02-25 17:14:10
    ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。...
  • 参考文章:Linux下C语言开发(已知进程名得到其PID号) 不唯一匹配(包含字符的全都匹配上)(而且进程名最多为15个字符?) ubuntu上 ps -e | grep 'receive' | awk '{print $1}' arm摄像头上 ps -e | grep 'ky_...
  • 每个人都知道 PID,究竟什么是 PID?为什么你想要 PID?你打算用 PID 做什么?你脑子里有同样的问题吗?如果是这样,你就找对地方了解这些细节了。我们查询 PID 主要是用来杀死一...PID 代表进程标识号process ident...
  • linux查询进程Pid并kill

    2022-02-19 18:09:04
    ps aux | grep tomcat | grep -v grep | ...ps aux | grep tomcat 查找所有进程,并过滤出只含有tomcat的进程 其中,第二个进程 ning 2058 0.0 0.0 103320 888 pts/0 S+ 18:50 0:00 grep tomcat 为执行”ps aux | g
  • 命令:ps aux | grep `pwd` | grep -v grep | awk '{print $2}' | xargs kill -9 详细解释【我的有道云笔记,不知道为什么没法直接复制到这里,亲们,将就一下吧】: ...sub=2050389...
  • 根据PID查询进程状态[CPU\内存\句柄\线程数\SOCKET],可编辑默认进程名称、或者./process_info.sh [PID] 使用
  • Linux查找进程PID并杀死进程的方法

    千次阅读 2020-04-22 11:19:39
    使用ps -ef命令确定要杀死进程PID ps -ef | grep chrome 或者 ps -aux | grep chrome kill 命令的执行原理是这样的,kill 命令会向操作系统内核发送一个信号(多是终止信号)和目标进程PID,然后系统内核根据...
  • linux根据端口查找进程

    千次阅读 2021-05-10 10:30:02
    1、利用lsof -i:端口号lsof -i:端口号[root@01 ~]# lsof -i:8097COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEjava 24033 root 323u IPv6 124173190 0t0 TCP *:sac (LISTEN)2、利用netstat查看端口号的进程,...
  • linux:根据主进程查找进程

    千次阅读 2019-09-07 17:53:54
    如下是我的项目中创建的一个java系统服务在通过systemctl status显示的服务状态 $ systemctl status facelog ● facelog.service - facelog service Loaded: loaded (/etc/systemd/system/facelog.service; enabled...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 79,227
精华内容 31,690
关键字:

linux 查找pid 通过进程名称