当前位置: 首页 > news >正文

Unix、GNU、BSD 风格中 ps 参数的区别

注:本文为“不同风格中 ps 命令参数的区别”相关文章合辑。
未去重。


BSD 风格和 UNIX 风格中 ps 参数的区别

作者:Daniel Stori

译者:LCTT Name1e5s

| 2017-06-17 10:53

One Last Question

One Last Question

ps aux 以及 ps -elf 都是查看进程的方式,分别来自于 BSD 风格(必须不带 -)和 UNIX 风格(必须带 -),这两种方式都有不少人用,此外除了这种可组合的单字母选项方式之外,还有以 -- 开头的 GNU 选项方式。

这个漫画就是说使用这两种方式的人就像 vim 党和 Emacs 党一样,随时都可能爆发圣战(大误 )。

附录

ps aux 是最常用的 BSD 风格选项组合,其中的 a 简单的说,表示所有关联到终端的进程,如果同时使用 x 则代表所有进程;u 表示列出进程的用户。

另外,可能是由于错用 ps -aux 的人太多,一些新的 ps 版本会在输入 ps -aux 时显示 ps aux 的结果,而不是 ps -aux 原本的意义:列出用户 x 所有的进程,如果没有则报错。

ps -elf-e 代表列出所有进程,-l 代表长格式,-f 代表完整的格式,有时候也用 -F 代表超完整的格式,具体大家试试便知。 不过,不同操作系统(如 Linux、BSD)的 ps 的版本和参数有很大差异,具体还是要以各自的手册而定。

另外一句题外话,之所以 aux-elf 这两种选项组合常用,是由于这个组合正好是易记、易读的英文单词(辅助、精灵),其组合后的用途也很有用。这种情况也出现在其它的常见命令中。

注:本漫画中原来用的是 ps -eLF,在某些版本上这个参数是成立的,但是,大部分情况下都使用的是 ps -elf,因此我们做了修改。


Linux 三种风格(Unix、BSD、GNU)下的 ps 参数说明

阿喵不是猫于 2018-11-30 17:03:08 发布

Linux 系统中使用 ps 命令支持 3 种不同类型的命令行参数:

  • Unix 风格的参数,前面加单破折线

  • BSD 风格的参数,前面不加破折线

  • GNU 风格的长参数,前面加双破折线

Unix 风格

img

img

其中 - f 显示的完整格式输出信息有:

  • UID: 启动这些进程的用户。
  • PID: 进程的进程 ID。
  • PPID: 父进程的进程号 (如果该进程是由另一个进程启动的)
  • C: 进程生命周期中的 CPU 利用率
  • STIME: 进程启动时的系统时间
  • TTY: 进程启动时的终端设备
  • TIME: 运行进程需要的累计 CPU 时间
  • CMD: 启动的程序名称

-l 输出的信息还会增加一些:

  • F : 内核分配给进程的系统标记
  • S : 进程的状态 (O 代表正在运行;S 代表在休眠;R 代表可运行,正等待运行;Z 代表僵
    化,进程已结束但父进程已不存在;T 代表停止)
  • PRI : 进程的优先级 (越大的数字代表越低的优先级)
  • NI : 谦让度值用来参与决定优先级
  • ADDR : 进程的内存地址
  • SZ : 假如进程被换出,所需交换空间的大致大小
  • WCHAN : 进程休眠的内核函数的地址

BSD 风格

img

img

在 BSD 风格下的 l 参数输出的信息基本与 Unix 一致,但也有一些不一样:

  • VSZ: 进程在内存中的大小,以千字节 (KB) 为单位
  • RSS: 进程在未换出时占用的物理内存
  • STAT: 代表当前进程状态的双字符状态码

许多系统管理员都喜欢 BSD 风格的 l 参数。它能输出更详细的进程状态码 (STAT 列)。双字符状态码能比 Unix 风格输出的单字符状态码更清楚地表示进程的当前状态。

第一个字符采用了和 Unix 风格 S 列相同的值,表明进程是在休眠、运行还是等待。第二个参数进一步说明进程的状态。

  • < : 该进程运行在高优先级上
  • N : 该进程运行在低优先级上
  • L : 该进程有页面锁定在内存中
  • s : 该进程是控制进程
  • l : 该进程是多线程的
  • + : 该进程运行在前台

GNU 风格

GNU 的参数是长参数。

img

img
详见《Linux命令行与shell脚本编程大全第3版》

https://download.csdn.net/download/ruibin_cao/11167006(链接已沉寂)


via:

  • one last question
    http://turnoff.us/geek/one-last-question/

    作者:Daniel Stori 译者:name1e5s 校对:wxy 合成:name1e5s 点评:name1e5s 本文由 LCTT 原创编译,Linux中国. 荣誉推出

  • Linux 三种风格(Unix、BSD、GNU)下的 ps 的参数说明_unix,gnu,bsd 选项之间的关系 - CSDN 博客 阿喵不是猫于 2018-11-30 17:03:08 发布
    https://blog.csdn.net/ruibin_cao/article/details/84660224

相关文章:

Unix、GNU、BSD 风格中 ps 参数的区别

注&#xff1a;本文为“不同风格中 ps 命令参数的区别”相关文章合辑。 未去重。 BSD 风格和 UNIX 风格中 ps 参数的区别 作者&#xff1a;Daniel Stori 译者&#xff1a;LCTT Name1e5s | 2017-06-17 10:53 One Last Question ps aux 以及 ps -elf 都是查看进程的方式&…...

单片机读写内部flash实现断电数据存储

在单片机编程中&#xff0c;读写内部Flash存储器是一种常见的方法来实现断电数据存储。这里以STM32系列单片机为例&#xff0c;展示如何通过HAL库进行简单的内部Flash读写操作。 以下是一个完整的示例代码&#xff0c;展示了如何擦除、写入和读取内部Flash中的数据。请注意&am…...

注意力机制介绍

注意力机制介绍 1.注意力机制由来,以及解决什么问题2.什么是注意力机制3.注意力机制分类及如何实现3.1 Soft Attention(常见):软注意3.1.1普通Encoder-Decoder框架3.1.2加入Attention的Encoder-Decoder框架3.1.3如何理解注意力概率分布3.1.4 Attention机制本质思想 3.2 Hard At…...

爬虫运行后数据如何存储?

爬虫运行后获取的数据可以存储在多种不同的存储系统中&#xff0c;具体选择取决于数据的规模、查询需求以及应用场景。以下是一些常见的数据存储方法&#xff1a; 1. 文件系统 对于小型项目或临时数据存储&#xff0c;可以直接将数据保存到本地文件中。常见的文件格式包括&…...

C# 自动自定义截图的内容

C# 自动自定义截图的内容 using System; using System.Drawing; using System.Runtime.InteropServices; class Program {[DllImport("user32.dll")]public static extern IntPtr GetDesktopWindow();[DllImport("user32.dll")]public static extern IntP…...

Java的Stream流:文件处理、排序与串并行流的全面指南

Java的Stream流&#xff1a;文件处理、排序与串并行流的全面指南 Java 8 引入了 Stream API&#xff0c;这是一个用于处理集合数据的强大工具&#xff0c;它提供了一种声明式的方式来进行聚合操作。Stream 不是一个数据结构&#xff0c;而是一种对数据进行操作的抽象&#xff…...

[Maven]下载安装、使用与简介

很多框架的下载使用的流程和思路是差不多的&#xff0c;这里以maven做详细介绍。 下载安装与配置变量 下载 首先&#xff0c;我们要使用maven&#xff0c;必须先下载它的相关文件。想要下载&#xff0c;我们可以直接搜索maven。找到它的官网。这里不绕弯子&#xff0c;直接给出…...

056 WXML+ WXSS+PHP+LW+校园配送商城微信小程序开发与设计 源码 文档 全套资料

校园配送微信小程序 1.项目描述2. 1.绪论3.项目技术与功能4.界面展示5.源码获取 1.项目描述 摘 要 近几年来&#xff0c;随着互联网和电子商务的快速发展和普及&#xff0c;改变了人们日常消费模式。尤其是移动互联网的相结合&#xff0c;使得人们日常生活中更多的是通过手机移…...

Python 在同一/或不同PPT文档之间复制幻灯片

复制幻灯片可以帮助我们更高效地完成工作&#xff0c;节省大量的制作时间。通过复制现有的幻灯片&#xff0c;可以快速创建新的演示文稿&#xff0c;而无需重新设计板式样式等。此外&#xff0c;复制幻灯片还可以帮助我们保持内容的一致性&#xff0c;使整个PPT演示文稿看起来更…...

C#生成CSR(CertificateSigningRequest)和密钥

使用C#原生生成CSR(CertificateSigningRequest)和密钥。 生成的私钥妥善保存&#xff0c;丢失无法找回。 调用 var contents X509Helper.SigningRequestHelper.CreateSigningRequest("yourdomain.com", ["*.yourdomain.com"], X509Helper.AsymmetricAl…...

Docker 安装 Oracle创建表空间并导入数据库

一、Docker 安装Oracle 1、检查docker 版本 2、docker 下载镜像 3、 docker启动容器 4、 进入容器内部 5、安装成功&#xff0c;使用客户端工具连接 二、创建数据库用户与表空间 1、查询数据库文件位置 2、创建表空间 3、创建用户 4、设置权限 三、导出数据库DMP …...

elementui table子级tree懒加载bug

1. 删除子级刷新列表子级依然显示 2.更新状态子级列表未刷新 3.编辑子级后刷新页面显示状态未变更 el-table 树表格load源码 首先&#xff0c;load可以执行&#xff0c;但是只剩一个子节点就有问题&#xff0c;那么就直接可以定位bug在load方法里&#xff1a; 文件路径&am…...

AI与低代码技术融合:如何加速企业智能化应用开发?

引言 随着全球数字化转型的步伐加快&#xff0c;企业在智能化应用开发方面面临着前所未有的挑战和机遇。传统的软件开发方式往往需要大量的技术人员、时间和资源&#xff0c;而在瞬息万变的市场环境中&#xff0c;这种模式显得效率低下且难以满足企业快速迭代和创新的需求。 与…...

【C#】新建窗体文件,Form、UserControl

从用途、功能性和架构方面进行描述。 1. 继承自 Form 的窗体&#xff08;通常是窗口&#xff09;&#xff1a; 在 C# 中&#xff0c;Form 是用于创建应用程序的主窗口或对话框窗口的类。当您继承自 Form 时&#xff0c;您创建的是一个完整的窗口&#xff0c;可以显示内容、与…...

ansible学习笔记之02command模块与shell模块

目录 1、概述 2、模块介绍 2.1 command模块 2.2 shell模块 2.3 小结 3、实验 3.1 测试ls命令 3.2 测试环境变量 3.3 测试操作符">" 1、概述 本文介绍ansible的command模块与shell模块&#xff0c;并通过实验比对两个模块的异同。 2、模块介绍 2.1…...

在Docker中部署禅道,亲测可用

1、确保centos中已安装docker docker -v 2、启动docker systemctl start docker 3、可设置docker开机启动 systemctl enable docker.service 4、获取最新版禅道开源版镜像 docker pull idoop/zentao 5、运行镜像生成禅道容器【创建 /data/www /data/data 目录】 doc…...

C++(十二)

前言&#xff1a; 本文将进一步讲解C中&#xff0c;条件判断语句以及它是如何运行的以及内部逻辑。 一&#xff0c;if-else,if-else语句。 在if语句中&#xff0c;只能判断两个条件的变量&#xff0c;若想实现判断两个以上条件的变体&#xff0c;就需要使用if-else,if-else语…...

【数学建模】线性规划问题及Matlab求解

问题一 题目&#xff1a; 求解下列线性规划问题 解答&#xff1a; 先将题目中求最大值转化为求最小值&#xff0c;则有 我们就可以得到系数列向量: 我们对问题中所给出的不等式约束进行标准化则得到了 就有不等式约束条件下的变系数矩阵和常系数矩阵分别为&#xff1a; 等式…...

【JavaWeb后端学习笔记】Spring全局异常处理器

在程序运行时&#xff0c;不可避免的会出现异常。在三层开发架构中&#xff0c;当Mapper层出现异常、如果不进行处理会抛给Service层&#xff0c;如果Service层也不处理则会抛给Controller层&#xff0c;通常Controller层有许多接口&#xff0c;如果对每个接口单独处理异常&…...

PT8M2102 触控型 8Bit MCU

1 产品概述 ● PT8M2102 是一款基于 RISC 内核的8位 MTP 单片机&#xff0c;内部集成了电容式触摸感应模块、TIMER&#xff0c;PWM、LVR、LVD、WDT等外设&#xff0c;其主要用作触摸按键开关&#xff0c;广泛适用于触控调光、电子玩具、消费电子、家用电器等领域&#xff0c;具…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

HTML前端开发:JavaScript 常用事件详解

作为前端开发的核心&#xff0c;JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例&#xff1a; 1. onclick - 点击事件 当元素被单击时触发&#xff08;左键点击&#xff09; button.onclick function() {alert("按钮被点击了&#xff01;&…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...