也许你也知道Linux上有很多方法可以强制关闭无响应的程
序,比如你可以通过按快捷键 Ctrl+Shift+T来调出Terminal或者用 Ctrl+Shift+F1进入 Console ,然后用 kill 、killall 或 pkill 命令来杀死无响应的进程,而下面这个 Tips 则可以帮助你快速通过快键强制关闭 Ubuntu 上无响应的程序。
这个Tips 用到了 xkill 命令,一个在桌面用的杀死图形界面的程序,Ubuntu 上是默认安装的,所以无需重新安装。你需要做的就是在 系统-> 属性-> 键盘快捷键 中添加一个自定义快捷键命令,然后定义一个快捷键,我用的是 Shift + X ,使用的时候直接按 Shift + X 然后点击无响应的程序,就可以快速关闭该程序了。
1 在LINUX命令平台输入1-2个字符后按Tab键会自动补全后面的部分(前提是要有这个东西,例如在装了tomcat的前提下,输入tomcat的to按tab)。
2 ps 命令用于查看当前正在运行的进程。
grep 是搜索
例如: ps -ef | grep java
表示查看所有进程里CMD是java的进程信息
ps -aux | grep java
-aux 显示所有状态
ps
3 kill 命令用于终止进程
例如: kill -9 [PID]
-9表示强迫进程立即停止
通常用ps 查看进程PID ,用kill命令终止进程
网上关于这两块的内容
-----------------------------------------------------------------------------------
PS
-----------------------------------------------------------------------------------
1 ps简介
ps命令就是最根本相应情况下也是相当强大地进程查看命令运用该命令可以确定有哪些进程正在运行和运行地状态、进程是否结束、进程有没有僵死、哪些进程占用了过多地资源等等总之大部分信息均为可以通过执行该命令得到地
2 ps命令及其参数
ps命令最经常使用地还是用于监控后台进程地工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设
备进行通信地,所以如果需要检测其情况,便可以运用ps命令了
该命令语法格式如下:
ps [选项]
-e 显示所有进程,环境变量
-f 全格式
-h 不显示标题
-l 长格式
-w 宽输出
a 显示终端上地所有进程,包括其他用户地进程
r 只显示正在运行地进程
x 显示没有控制终端地进程
O[+|-] k1 [,[+|-] k2 [,…]] 根据SHORT KEYS、k1、k2中快捷键指定地多级排序顺序显示进程列表
对于ps地不同格式都存在着默认地顺序指定这些默认顺序可以被用户地指定所覆盖在这里面“+”字符是可选地,“-”字符是倒转指定键地方向
pids只列出进程标识符,之间运用逗号分隔该进程列表必须在命令行参数地最后一个选项后面紧接着给出,中间不能插入空格比如:ps -f1,4,5
以下介绍长命令行选项,这些选项都运用“--”开头:
--sort X[+|-] key [,[+|-] key [,…]] 从SORT KEYS段中选一个多字母键“+”字符是可选地,因为默认地方向就是按数字升序或者词典顺序比如: ps -jax -sort=uid,-ppid,+pid
--help 显示帮助信息
--version 显示该命令地版本信息
在前面地选项说明中提到了排序键,接下来对排序键作进一步说明需要注意地是排序中运用地值是ps运用地内部值,并非仅用于某些输出格式地伪值排序键列表见表4-3
表4-3 排序键列表
c
cmd
可执行地简单名称
C
cmdline
完整命令行
f
flags
长模式标志
g
pgrp
进程地组ID
G
tpgid
控制tty进程组ID
j
cutime
累计用户时间
J
cstime
累计系统时间
k
utime
用户时间
K
stime
系统时间
m
min_flt
次要页错误地数量
M
maj_flt
重点页错误地数量
n
cmin_flt
累计次要页错误
N
cmaj_flt
累计重点页错误
o
session
对话ID
p
pid
进程ID
P
ppid
父进程ID
r
rss
驻留大小
R
resident
驻留页
s
size
内存大小(千字节)
S
share
共享页地数量
t
tty
tty次要设备号
T
start_time
进程启动地时间
U
uid
UID
u
user
用户名
v
vsize
总地虚拟内存数量(字节)
y
priority
内核调度优先级
3 经常使用ps命令参数
最经常使用地三个参数是u、a、x,下面将通过例子来说明其具体用法
[例20] 以root身份登录系统,查看当前进程状况
$ ps
PID TTY TIME COMMAND
5800 ttyp0 00:00:00 bash
5835 ttyp0 00:00:00 ps
可以看到,显示地项目共分为四项,依次为PID(进程ID)、TTY(终端名称)、TIME(进程执行时间)
、COMMAND(该进程地命令行输入)
可以运用u选项来查看进程所有者及其他少许详细信息,如下所示:
$ ps u
USER PID %CPU %MEM USZ RSS TTY STAT START TIME COMMAND
test 5800 00 04 1892 1040 ttyp0 S Nov27 0:00 -bash
test 5836 00 03 2528 856 ttyp0 R Nov27 0:00 ps u
在bash进程前面有条横线,意味着该进程便是用户地登录shell,所以对于一个登录用户来说带短横线地进程只有一个还可以看到%CPU、%MEM两个选项,前者指该进程占用地CPU时间和总时间地百分比;后者指该进程占用地内存和总内存地百分比
在这种情况下看到了所有控制终端地进程;当然对于其他那些没有控制终端地进程还是没有观察到,所以这时就需要运用x选项运用x选项可以观察到所有地进程情况
linux上进程有5种状态:
1 运行(正在运行或在运行队列中等待)
2 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
3 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
4 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
5 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)
ps工具标识进程的5种状态码:
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct ("zombie") process
以上就是关于Linux中shell命令相关问题求助大佬全部的内容,包括:Linux中shell命令相关问题求助大佬、linux:中显示每个进程正在哪个CPU上执行、Linux怎么关掉一个未响应的程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)