Linux 通过程序名获取进程ID并Kill】的更多相关文章

#!/bin/bash pids=$(ps -ef | grep XXX| awk '{print $2}') for pid in $pids do echo $pid kill -9 $pid done…
http://www.cnblogs.com/hazir/tag/kernel/ Linux 内核进程管理之进程ID   Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数据和结构,Linux 内核所有涉及到进程和程序的所有算法都是围绕该数据结构建立的,是内核中最重要的数据结构之一.该数据结构在内核文件 include/linux/sched.h 中定义,在Linux 3.8 的内核中,该数据结构足足有 380 行之多,在这里我不可能逐项去描述其表示的含义,本篇文章只…
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何通过进程名获取进程ID.…
python获取进程id号: os.getpid()获取当前进程id os.getppid()获取父进程id…
Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数据和结构,Linux 内核所有涉及到进程和程序的所有算法都是围绕该数据结构建立的,是内核中最重要的数据结构之一.该数据结构在内核文件 include/linux/sched.h 中定义,在Linux 3.8 的内核中,该数据结构足足有 380 行之多,在这里我不可能逐项去描述其表示的含义,本篇文章只关注该数据结构如何来组织和管理进程ID的. 进程ID类型 要想了解内核如何来组织和管理进程ID,先要知道进程ID的类型:…
转自:http://www.cnblogs.com/hazir/p/linux_kernel_pid.html Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数据和结构,Linux 内核所有涉及到进程和程序的所有算法都是围绕该数据结构建立的,是内核中最重要的数据结构之一.该数据结构在内核文件 include/linux/sched.h 中定义,在Linux 3.8 的内核中,该数据结构足足有 380 行之多,在这里我不可能逐项去描述其表示的含义,本篇文章只关注该数据…
#include <windows.h> #include <stdint.h> #include <tlhelp32.h> #include <stdio.h> #include <iostream> #include <vector> typedef struct EnumHWndsArg { std::vector<HWND> *vecHWnds; DWORD dwProcessId; }EnumHWndsArg,…
我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为“批处理进程”). 在某些情况下,你也许想要知道运行中的子shell的PID.这个PID信息可以在不同的情况下使用.比如,你可以使用shell脚本的PID在/tmp下创建一个唯一的临时文件.有时侯脚本需要检测所有运行的进程,它可以从进程列表中排除自身的子shell.…
准备写一个进程管理的功能模块,今天下午先写了扫描获取本机各个进程路径,获取各个进程映像名称,进程完整路径. 要获取进程信息,第一步想到的就是提权,提权代码用过多次了,今天也小结了一下(http://www.cnblogs.com/lsh123/p/8280575.html),不再复述. 0x01  自定义结构体 struct _PROCESS_INFORMATION_ { ULONG ProcessID; ULONG ParentProcessID; char ImageNameData[MAX…
1. 在 LINUX 命令平台输入 1-2 个字符后按 Tab 键会自动补全后面的部分(前提是要有这个东西,例如在装了 tomcat 的前提下, 输入 tomcat 的 to 按 tab).2. ps 命令用于查看当前正在运行的进程.grep 是搜索例如: ps -ef | grep java表示查看所有进程里 CMD 是 java 的进程信息ps -aux | grep java-aux 显示所有状态ps3. kill 命令用于终止进程例如: kill -9 [PID]-9 表示强迫进程立即停…
DWORD GetProcessID(const char *ProcessName) { PROCESSENTRY32 pe32; pe32.dwSize = sizeof(PROCESSENTRY32); //获取进程快照 HANDLE hProcessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hProcessSnap == INVALID_HANDLE_VALUE) { printf("CreateToolh…
看端口: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程. 使用命令:netstat –apn 查看所有的进程和端口使用情况.发现下面的进程列表,其中最后一栏是PID/Program name 发现8080端口被PID为9658的Java进程占用. 进一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看 就可以明确知道8080端口是被哪个程序占用了!然后判断是否使用KILL命令干掉! 方法二:直接使用 n…
pidof pidof可以查找指定名称的进程的pid,将结果送到标准输出.pidof有两种返回值:0,找到至少一个进程:1,没有找到进程.pidof实际上与killall5相同:程序根据调用它的名称进行操作. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora.   1.语法        pidof [选项]  name   2.选项列表 选项 说明 -s 一次只响应一个进程号 -c 只显示运行在root目录下的进程,这个选项只对ro…
今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo "第0个参数:$0"echo "第一个参数:$1"echo "当前子shell进程:$$" #pidarr=`ps x | awk '{print $1}'`pidarr=$(ps x | awk '{print $1}')echo $pidadd…
经常需要杀死某个进程,操作了几次之后,对一个熟练的码农来说,就要制作自己的工具了.有些工具虽然很小,但是却能节省一大部分的时间. 输入某个进程的ID并杀死的方法.这种事情,一般是先搜索再进行优化,这种对我这种不是大牛的人来说,是最快的方法: 果然不出所料,很快我就找到一个能用的脚本: #!/bin/bash echo "Input process name first" read input1 PID=$(ps -e|grep $input1|awk '{printf $1}') ];…
例如需要杀掉监听进程,如下: [oracle@kel ~]$ ps -ef|grep lsnr oracle 4973 1 1 19:40 ? 00:00:00 /home/oracle/product/10.2.0/db_1/bin/tnslsnr LISTENER -inherit oracle 4977 4868 0 19:40 pts/0 00:00:00 grep lsnr 使用下面的即可: [oracle@kel ~]$ ps -ef|grep lsnr|grep -v grep o…
WORD  GetProcessIdByName(WCHAR *processName){ DWORD processId = 0;HANDLE hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);if(hProcessSnap==INVALID_HANDLE_VALUE){return 0;} PROCESSENTRY32 pe32;pe32.dwSize = sizeof(PROCESSENTRY32); BOOL bMor…
例如:查看占用4040端口的进程 ss -lptn 'sport = :4040'…
sudo netstat -antupkill -s 9 50713netstat -n | grep 61616netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'…
ps -ef | grep 753 | grep -v 'grep' | awk '{print $NF}'…
进程查看 ps ax : 显示当前系统进程的列表 ps aux : 显示当前系统进程详细列表以及进程用户 ps ax|less : 如果输出过长,可能添加管道命令 less查看具体进程, 如:ps ax|grep XXX(XXX为进程名称) 获取进程id shell获取进程ID的方法: ps -A |grep "cmdname"| awk '{print $1}' pidof "cmdname" pgrep "cmdname" 这三种在bash和…
Linux下的tomcat的停止脚本shutdown.sh经常失败,造成tomcat进程没关闭.所以只能手动查找进程id,然后用kill命令来强制停止.每次都要这样查一下,然后再杀进程.感觉有点麻烦,所以就把这个动作写在了脚本里面.     一.思路      这个脚本其实就2步,先获取进程id,然后 kill 掉这个进程. (1)获取进程id的方法     这个可以用 awk命令来获取 ps -ef | grep 你的进程 | grep -v grep | awk '{print $2}' 1…
测试环境:Ubuntu14.04 1.  获取进程ID号 ps -aux | grep your_process_name 例如: xxx@xxx:~$ ps -e |grep Midlet|awk '{print $1}' 9356 2.  查看进程相关信息 2.1 查看进程树信息: xxx@xxx:~$ pstree -p 9356 runMidlet(9356)───{runMidlet}(9357) 2.2 查看进程打开的文件: xxx@xxx:~$ lsof -p 9356 lsof:…
转自:http://blog.csdn.net/gatieme/article/category/6225543 日期 内核版本 架构 作者 GitHub CSDN 2016-05-12 Linux-4.5 X86 & arm gatieme LinuxDeviceDrivers Linux-进程管理与调度 Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数据和结构,Linux 内核所有涉及到进程和程序的所有算法都是围绕该数据结构建立的,是内核中最重要的数据结构之一.…
在Linux/Unix系统中.每一个进程都有一个非负整型表示的唯一进程ID.尽管是唯一的.可是进程的ID能够重用.当一个进程终止后,其进程ID就能够再次使用了. 大多数Linux/Unix系统採用延迟重用的算法,使得赋予新建进程ID不同于近期终止进程所使用的ID,这主要是为了防止将新进程误觉得是使用同一ID的某个已终止的先前进程.本文讨论了Linux/Unix分配进程ID的方法以及源代码实现. 分配进程ID的方法 在大多数Linux/Unix系统中,生成一个进程ID方法是:从0開始依次连续分配,…
一.什么是defunct进程(僵尸进程)? 在 Linux 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,那么他将变成一个僵尸进程.当用ps命令观察进程的执行状态时,看到这些进程的状态栏为defunct.僵尸进程是一个早已死亡的进程,但在进程表(processs table)中仍占了一个位置(slot). 但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程.因为每个进程结束的时候,系统都会扫描当前系统中所运行的所有进程,看看有没有哪个进程是刚…
1.通过可执行程序的程序名称 a.运行程序 b.获取进程id号 c.pidof相关知识:http://www.cnblogs.com/yunsicai/p/3675938.html 2.有些程序需要在特定的环境中运行,无法直接通过进程名成获取 A.shell脚本 a.运行 b.获取pid号 B.nodejs .nc.... a.运行 b.获取 此时pidof无法直接获取: 因为进程名成为node: 我们要获取webDC.js的pid号: 我们通过grep -v 屏蔽掉命令自己的进程影响(由于在脚…
C#获取运行程序的进程ID [DllImport("User32.dll", CharSet = CharSet.Auto)] public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID); [DllImport("user32.dll", EntryPoint = "FindWindow")] private extern static IntPtr Fin…
只知道进程ID,获取主窗口句柄的方法如下: 通过EnumWindows枚举所有窗口 使用GetWindowThreadProcessID,通过窗口句柄获取进程ID 比便获取的进程ID与当前已知的进程ID,判断是否为需要的窗口 代码如下: function GetHwndFromProcess(const hPID: THandle): THandle; type PEnumInfo = ^TEnumInfo; TEnumInfo = record ProcessID: DWORD; HWND:…
目录 Daemon进程介绍 前提知识 Daemon进程的编程规则 Daemon进程介绍 Daemon运行在后台也称作"后台服务进程". 它是没有控制终端与之相连的进程.它独立与控制终端.会话周期的执行某种任务. 那么为什么守护进程要脱离终端后台运行呢? 守护进程脱离终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会被任何终端所产生的任何终端信息所打断. 那么为什么要引入守护进程呢? 由于在linux中,每一个系统与用户进行交流的界面称为终端,每一个从此终端开始运行的进程…