Linux终端有一系列有用的命令。它们可以显示正在运行的进程、杀死进程和改变进程的优先级。本文列举了一些经典传统的命令和一些有用新颖的命令。本文提到的命令会实现某个单一功能。它们可以结合起来——这也是Unix设计程序的理念。其它命令,例如htop,会在命令的上层提供一个友好的界面供用户使用。

top

top命令是一个常用的查看系统资源使用情况和查看占用系统资源最多的进程的命令。top以列形式显示所有的进程,占最多CPU资源的进程会显示在最上面。

要退出top或者htop,可以使用键盘快捷键Ctrl-C。这个键盘快捷键通常会终止目前在终端上运行的进程。

htop

htop命令是top的改进版。默认情况下,大多数Linux发行版本都没有安装htop——在Ubuntu系统上安装可以运行以下命令:

  1. sudo apt-get install htop

htop命令显示的信息与top相同,但它的界面更人性化。你可以使用键盘箭头键选择进程和采取某些动作,例如杀死进程或者改变它们的优先级。

过去我们详细解释过htop。

ps

ps命令可以列出正在运行的进程。以下命令列出所有在你系统上运行的命令:

  1. ps -A

这个命令列出的信息也许太多,不方便阅读。你可以使用less命令对输出进行管道,这样你就可以按你的速度滚动阅读:

  1. ps -A | less

当你阅读完后,可以按q退出。

你也可以使用grep来对输出做管道,这样可以不需要使用其它命令就能搜索出某个进程。以下命令会搜索Firefox进程:

  1. ps -A | grep firefox

pstree

pstree命令也可以显示进程信息。它以树的形式显示进程。例如,你的x系统和图形环境会出现在产生树状进程的显示管理器的下面。

kill

kill命令可以根据进程ID来杀死进程。你可以使用ps -A,top,或者grep命令获取到进程ID。

  1. kill pid

从技术层面来讲,kill命令可以发送任何信号给一个进程。你可以使用kill -KILL或者kill -9来杀死顽固的进程。

pgrep

给定一个搜索关键词,pgrep命令会返回所有匹配这个关键词的进程ID。例如,你可以使用以下命令寻找Firefox的PID:

  1. pgrep firefox

你也可以将这个命令与kill命令结合起来杀死一个特定的进程。但是,使用pkill或者killall会更简单。

pkill & killall

pkill和killall命令可以根据进程的名字杀死一个进程。使用以下任一方法都可以杀死Firefox进程:

  1. pkill firefox

  2. killall firefox

renice

renice命令用来改变进程的nice值。nice值代表进程的优先级。-19的nice值是非常高的优先级,相反,19是非常低的优先级。0是默认的优先级。

运行renice命令需要使用进程的ID。以下命令可以让某个进程以非常低的优先级运行。

  1. renice 19 pid

你可以把pregrep和renice结合起来使用,如上图所示。

如果你想把进程的优先级调高,那么你需要使用root权限。在Ubuntu系统,使用sudo获取root权限:

  1. sudo renice -19 #

xkill

xkill命令是一个可以轻易杀死图形程度的命令。运行它之后,你的光标会变成x符号。点击相应的图形程序的窗口就可以杀死该程序。如果你中途要放弃操作,你可以点击鼠标右键取消。

你不一定要在终端运行这个命令——你可以在图形桌面上按Alt-F2,输入xkill然后按回车键来运行它。我们已经将xkill和热键绑定,这样杀死进程就更容易了。

你有没有一些喜爱的命令我们这里又没有提及的,或者其它一些小技巧可以分享的?请留下你的评论。

原文链接: Chris Hoffman 翻译: 极客范 - Ben Zhang

转载于:https://blog.51cto.com/lucifer119/1378147

从Linux终端管理进程:10个你必须知道的命令相关推荐

  1. linux 进程代码,怎样从Linux终端管理进程:10个你必须知道的命令

    Linux终端有一系列有用的命令.它们可以显示正在运行的进程.杀死进程和改变进程的优先级.本文列举了一些经典传统的命令和一些有用新颖的命令.本文提到的命令会实现某个单一功能.它们可以结合起来--这也是 ...

  2. 怎样从Linux终端管理进程:10个你必须知道的命令

    本文由 极客范 - Ben Zhang 翻译自 Chris Hoffman.欢迎加入极客翻译小组,同我们一道翻译与分享.转载请参见文章末尾处的要求. Linux终端有一系列有用的命令.它们可以显示正在 ...

  3. C/C++内存分配与Linux内存管理进程所涉及到的五个数据段 .

    一. 在c中分为这几个存储区 1.栈 - 由编译器自动分配释放 2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 3.全局区(静态区),全局变量和静态变量的存储是放在一块的, ...

  4. Linux如何管理进程

    一.程序 是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具 用于描述进程要完成的功能,是控制进程执行的指令集 二.进程 1.什么是进程 运行中的程序的一个副本,是被载入 ...

  5. linux 服务进程管理,进程管理和系统服务-Linux学习笔记

    进程的类型 1.可以将运行在Linux系统中的进程分为三种不同的类型: 2.交互进程:由一个Shell启动的进程.交互进程既可以在前台运行,也可以在后台运行. 3.批处理进程:不与特定的终端相关联,提 ...

  6. Linux 有关管理进程的命令小结

    1.kill NAME kill - terminate a process (终止进程) SYNOPSIS kill [-signal] pid 说明: kill 给指定进程发送指定信号. 如果没有 ...

  7. linux如何管理进程,在嵌入式linux中进程是怎么管理的

    在linux内核中管理进程的方式,是创建了一个双向循环链表,然后这个链接上每一个成员就是一个task_struct结构体,每一个结构体就是一个进程,这玩意,太大了,这里我的精神不允许我叭叭那么多,所以 ...

  8. linux内存管理窥探10,Linux 内存管理窥探(2):内存模型

    讨论内存的模型之前需要先聊一下两种计算机架构:UMA 和 NUMA UMA 称为均匀存储器存取(Uniform-Memory-Access) : 物理存储器被所有处理机均匀共享.所有处理机对所有存储字 ...

  9. linux计划任务如何关闭程序,linux系统管理-管理进程并设置计划运行的任务

    案例需求 --为了更好的了解和控制Linux服务器的有序运行,需要管理员对进程管理和计划任务设置相关操作进行熟悉,以完成相应的服务运行维护任务. 需求描述 管理系统中的进程 确认vsftpd.sshd ...

最新文章

  1. 2.3 使用 dom4j 对 xml文件进行 dom 解析
  2. dnslog 在 sql注入中的应用
  3. 物联网细分领域-车联网(OBD)市场分析
  4. Jenkins安装与启动
  5. vue.js路由配置vue-router的基础学习 - 概念篇
  6. 我将要关注的kaggle比赛
  7. Windows Workflow Foundation实验01——Windows Workflow Foundation快速入门(练习四)
  8. gis python趋势变化代码_GIS技术发展趋势——2018年回顾与2019年展望
  9. python编写递归函数和非递归函数、输出斐波那契数列_C语言编程:用递归和非递归法输出斐波那契数列...
  10. 快速搭建Python开发环境
  11. Nvme协议固态装纯净win10系统
  12. FPGA 优秀学习代码
  13. 视频转换器如何将视频MKV转换成MP4格式 1
  14. 制作纯净的U盘启动盘(避免纯净系统安装后却内置垃圾软件)
  15. 在线设计:在线制作卡通头像
  16. Android 颜色代码收集
  17. MBR15200FAC-ASEMI插件肖特基二极管MBR15200FAC
  18. 缺陷管理工具大PK:UniPro、Bugzilla和Teambition哪家强
  19. mysql useing查询_MySQL查询优化一例——也说说 Using intersect
  20. 四旋翼飞行器平衡传感器数据 处理方法探讨

热门文章

  1. 项目是采用目前比较流行的 SpringBoot/SpringCloudAlibaba构建新零售微服务电商项目
  2. MDB图表统计bootstrap后台模板
  3. 某角数卡发卡网程序V1.7.1版本开源源码
  4. WCF光芒下的Web Service
  5. Magento教程 24:如何发送电子报! (Newsletter)
  6. Sublime Text 2插件安装及快捷键介绍
  7. node.js——麻将算法(二)赖子玩法
  8. C/C++—— #include“stdafx.h”详解
  9. STL——vector容器详解
  10. ktv数据表设计 1216