从Linux终端管理进程:10个你必须知道的命令
从Linux终端管理进程:10个你必须知道的命令
Linux终端有一系列有用的命令。它们可以显示正在运行的进程、杀死进程和改变进程的优先级。本文列举了一些经典传统的命令和一些有用新颖的命令。本文提到的命令会实现某个单一功能。其它命令,例如htop,会在命令的上层提供一个友好的界面供用户使用。
top
top命令是一个常用的查看系统资源使用情况和查看占用系统资源最多的进程的命令。top以列形式显示所有的进程,占最多CPU资源的进程会显示在最上面。
要退出top或者htop,可以使用键盘快捷键Ctrl-C。这个键盘快捷键通常会终止目前在终端上运行的进程。
htop
htop命令是top的改进版。默认情况下,大多数Linux发行版本都没有安装htop——在Ubuntu系统上安装可以运行以下命令:
sudo apt-get install htop
htop命令显示的信息与top相同,但它的界面更人性化。你可以使用键盘箭头键选择进程和采取某些动作,例如杀死进程或者改变它们的优先级。
过去我们详细解释过htop。
ps
ps命令可以列出正在运行的进程。以下命令列出所有在你系统上运行的命令:
ps -A
这个命令列出的信息也许太多,不方便阅读。你可以使用less命令对输出进行管道,这样你就可以按你的速度滚动阅读:
ps -A | less
当你阅读完后,可以按q退出。
你也可以使用grep来对输出做管道,这样可以不需要使用其它命令就能搜索出某个进程。以下命令会搜索Firefox进程:
ps -A | grep firefox
pstree
pstree命令也可以显示进程信息。它以树的形式显示进程。例如,你的x系统和图形环境会出现在产生树状进程的显示管理器的下面。
kill
kill命令可以根据进程ID来杀死进程。你可以使用ps -A,top,或者grep命令获取到进程ID。
kill pid
从技术层面来讲,kill命令可以发送任何信号给一个进程。你可以使用kill -KILL或者kill -9来杀死顽固的进程。
pgrep
给定一个搜索关键词,pgrep命令会返回所有匹配这个关键词的进程ID。例如,你可以使用以下命令寻找Firefox的PID:
pgrep firefox
你也可以将这个命令与kill命令结合起来杀死一个特定的进程。但是,使用pkill或者killall会更简单。
pkill & killall
pkill和killall命令可以根据进程的名字杀死一个进程。使用以下任一方法都可以杀死Firefox进程:
pkill firefox
killall firefox
renice
renice命令用来改变进程的nice值。nice值代表进程的优先级。-19的nice值是非常高的优先级,相反,19是非常低的优先级。0是默认的优先级。
运行renice命令需要使用进程的ID。以下命令可以让某个进程以非常低的优先级运行。
renice pid
你可以把pregrep和renice结合起来使用,如上图所示。
如果你想把进程的优先级调高,那么你需要使用root权限。在Ubuntu系统,使用sudo获取root权限:
sudo renice - #
xkill
xkill命令是一个可以轻易杀死图形程度的命令。运行它之后,你的光标会变成x符号。点击相应的图形程序的窗口就可以杀死该程序。如果你中途要放弃操作,你可以点击鼠标右键取消。
你不一定要在终端运行这个命令——你可以在图形桌面上按Alt-F2,输入xkill然后按回车键来运行它。我们已经将xkill和热键绑定,这样杀死进程就更容易了。
你有没有一些喜爱的命令我们这里又没有提及的,或者其它一些小技巧可以分享的?请留下你的评论。
从Linux终端管理进程:10个你必须知道的命令的更多相关文章
- 在Linux终端管理文件你要知道的11个命令
LS - 列表文件 ls命令列出目录中的文件. 默认情况下,使用ls列出当前目录下的文件. 2 你也可以列出文件递归-也就是说,列出所有文件在当前目录中的目录-使用ls -R.LS还可以列出在其他目录 ...
- 5 个在 Linux 中管理文件类型和系统时间的有用命令
对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同 ...
- Linux工作管理 jobs、fg、bg、nohup命令
概述 在Linux 中我们登陆了一个终端,已经在执行一个操作,可以通过一定的操作或命令在不关闭当前操作的情况下执行其他操作. 例如,我在当前终端正在 vi 一个文件,在不停止 vi 的情况下,如果我想 ...
- 谁需要GUI?快看Linux 终端生存之道
完全在 Linux 终端中生存并不容易,但这绝对是可行的. 处理常见功能的最佳 Linux shell 应用 你是否曾想像过完完全全在 Linux 终端里生存?没有图形桌面,没有现代的 GUI 软件, ...
- Linux 用户管理 与 文件权限
Linux 用户管理 与 文件权限 用户组操作 1.groupadd命令 groupadd [-g -o] gid group 各个选项具体含义如下: -g:指定新建用户组的GID号,该GID号必须唯 ...
- Linux 内核进程管理之进程ID
Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数据和结构,Linux 内核所有涉及到进程和程序的所有算法都是围绕该数据结构建立的,是内核中最重要的数据结构之一.该数据结构 ...
- Linux下的进程管理
在操作系统系统中,进程是一个非常重要的概念. 一.Linux中进程的相关知识 1.什么是进程呢? 通俗的来说进程是运行起来的程序.唯一标示进程的是进程描述符(PID),在linux内核中是通过task ...
- Linux 内核进程管理之进程ID 。图解
http://www.cnblogs.com/hazir/tag/kernel/ Linux 内核进程管理之进程ID Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数 ...
- Linux学习之进程管理
|-进程管理 进程常用命令 |- w查看当前系统信息 |- ps进程查看命令 |- kill终止进程 |- 一个存放内存中的特殊目录/p ...
随机推荐
- ownCloud Virtual Machines(bitnami.com)
ownCloud Virtual Machines(bitnami.com)https://bitnami.com/stack/owncloud/virtual-machine
- 将QT开发的界面程序封装成DLL,在VC中成功调用
最近手头的一个项目需要做一个QT界面,并且封装成DLL,然后再动态调用DLL给出的接口函数,使封装在DLL内部的QT界面跑起来,在网上查了很多资料,今天终于成功了,经验不敢独享,因为CSDN给了我很多 ...
- ListView与CheckBox组合实现单选
main.xml配置文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns ...
- 经过一年时间的沉淀 再次回首 TCP Socket服务器编程--转
------------------ 前言 ------------------ 开发了这么多年,发现最困难的程序开发就是通讯系统. 其他大部分系统,例如CRM/CMS/权限框架/MIS之类的,无论怎 ...
- archlinux相关资料整理
Arch linux Arch Linux Wiki Arch linux Wiki Markdown Arch Wiki python continuing ...
- Google street、Google satellite 、百度地图Iframe切换桥接JS
1.地图切换方法 注意:父页面访问Iframe页面JS方法需根据Iframe的名字来调用如:named "mapIfame" 即 mapIfame.window.iframeFun ...
- uestc poj2559 秋实大哥去打工
//感觉有必要把这题放博客上待复习 刚刚写解题报告的时候发现自己又不会做这题了 //我不会告诉你这题绝对是命题人抄poj2559 这题使用一个单调递增的栈,栈内存储的元素有两个值,一个高度,一个长度. ...
- Conquering Keokradong && Get the Containers(二分)
Conquering Keokradong Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu ...
- 忘记root密码修改方法
好吧,不想重新装(那耗费的时间真心伤不起…),找修改root密码的方法,结果还真找到了… 首先在虚拟机启动时,在Grub界面按“e”进入编辑 在linux /vmlinuz那行后面添加“init=/b ...
- POJ2241——The Tower of Babylon
The Tower of Babylon Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2207 Accepted: 1 ...