Linux 中的 who 命令

2023-11-13

在这篇文章中,我们解释了who捆绑在 GNU coreutils 包中的命令。

who是一个命令行实用程序,用于打印当前登录用户的列表。它还可以显示当前的运行级别、上次系统启动的时间等。

如何使用who命令#

的基本语法为who命令如下:

who [OPTION]... [ FILE | ARG1 ARG2 ]

当不带任何选项或参数调用时,输出如下所示:

who
root     pts/0        2020-11-17 20:10 (10.10.0.2)
linuxize    pts/1        2020-11-17 20:11 (10.10.0.8)

who将输出当前登录系统的所有用户的格式化列表。

每行包含四个由一个或多个空格分隔的字段:

  • 已登录用户的名称。
  • 用户的终端。
  • 用户登录的时间。
  • 用户登录的主机名或 IP 地址。要强制 Ips,请使用--ips option.

如果要打印列标题,请添加-H (--heading) 选项:

who -H
NAME      LINE         TIME             COMMENT
root      pts/0        2020-11-17 20:10 (10.10.0.2)
linuxize  pts/1        2020-11-17 20:11 (10.10.0.8)

该命令提取有关系统以及登录者的信息/var/run/utmp文件。如果要使用其他文件,请将文件路径传递给命令。

who接受两个非选项参数。当使用两个参数调用时,该命令仅打印有关与当前用户关联的终端的信息。当-m使用选项。

您可以使用任意两个参数:

who am iwho mom lovewho foo barwho -m

上面的每个命令都会打印相同的信息:

linuxize  pts/1        2020-11-17 20:11 (10.10.0.8)

who命令选项#

who接受几个通常很少使用的选项。

The -b, --boot选项告诉who打印上次系统启动的时间:

who -b
         system boot  2020-07-20 19:02

要获取所有死进程的列表,请使用-d, --dead option:

who -d

The -r, --runlevel选项,告诉who显示当前运行级别:

who -r
         run-level 5  2020-07-20 19:02

要仅获取用户名和当前登录用户的数量, 使用-q, --count option:

who -q
root linuxize
# users=2

The -a, --all选择力who打印所有信息:

who -a
           system boot  2020-07-20 19:02
LOGIN      tty1         2020-07-20 19:02               673 id=tty1
           run-level 5  2020-07-20 19:02
root       - pts/0      2020-11-17 20:10   .       2212314 (89.205.101.54)
           pts/2        2020-10-10 10:19           1363538 id=ts/2  term=0 exit=0
linuxize   + pts/1      2020-11-17 20:11 01:46     2212387 (89.205.101.54)

结论#

The who命令打印所有当前登录用户的列表。

要获取有关当前登录用户的更多信息,请检查w命令。

如果您有任何疑问,请在下面留言。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux 中的 who 命令 的相关文章

  • 尽管安装了 Spyder-Terminal,Spyder 5 中仍然没有终端

    我在 Mac OS Big Sur 上安装了 Spyder 5 我从终端运行此命令 conda install spider terminal c spider ide 该命令运行没有错误 仍然没有终端 我一定做错了什么 因为终端没有显示在
  • 通过 BASH 将空格替换为下划线

    假设我有一个字符串 str 我希望编辑 str 使其中的所有空格都替换为下划线 Example a hello world 我想要的最终输出 echo a to be 你好世界 您可以尝试以下操作 str str
  • “rails server”命令在终端中不起作用

    我对 Rails 还很陌生 正在尝试设置一个非常简单的测试站点 我使用以下命令创建了新的 Rails 应用程序目录rails new命令 但无法设置服务器以在浏览器中查看页面 以下是我尝试时收到的消息rails server MacBook
  • psql 显示 ansi 彩色文本

    My psqlrc有以下选项 setenv LESS iMSx4 FXR setenv PAGER less pset pager always 我想要着色的 psql 输出是 x1B 35m x1B 0m x1B 35mr x1B 0m
  • 捕获不带 \n 的输入

    我正在终端中制作一个简单的 2d 游戏 我一直想知道如何获得标准输入而不必返回 因此 用户不必按 w n n 用于返回 而只需按 w 即可前进 scanf gets 和 getchar 无法做到这一点 但我以前见过在 Vi 等程序中做到过
  • stripe 登录 zsh:未找到命令:stripe

    我正在跟进条纹文档 https stripe com docs stripe cli install当我去stripe login在步骤 2 中 我收到以下错误 zsh 找不到命令 条带 我已经执行了步骤 1 安装 stripe CLI 为
  • 断开连接后保持 SSH 会话运行 - 过夜 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是对此的后续问题question https stackoverflow com questions 33041892 keep ssh
  • Apple 听写 - 在应用程序中使用

    有什么方法可以在本机 Apple 应用程序中利用 Apple 的听写语音转文本功能吗 你的问题有点模糊 最好先知道你尝试使用或做什么 或者你想要实现什么目标 更常见的是关键字识别 API 但可以用于此目的的语音识别 API 是张开耳朵 ht
  • VS Code 终端无法识别 PATH 变量

    我在 PATH 中添加了一个目录 但 VS Code 中的终端无法识别我尝试从该目录运行的命令 exe 终端使用 cmd 而不是 power shell 我缺少什么 重新启动我的计算机 它就工作了 显然 VS Code 无法识别这些更改
  • `npm i` 命令有什么作用?

    什么是i在 npm CLI 中执行命令 我看到它是这样使用的 npm i package The iflag 是一个别名install so npm i package 是相同的 npm install package 从文档中 npm i
  • 如何在终端中显示图像?

    是否有任何类型的实用程序可以用来将图像转换为 ASCII 然后在我的终端中打印 我寻找过 但似乎没有找到 一个名为cacaview http linux die net man 1 cacaview允许您执行此操作 它是交互式的 允许您平移
  • 计算Mac中目录及其子目录的特定文件类型的数量

    I use ls l filetype wc l但它只能查找当前目录中的文件 我怎样才能计算子目录中具有特定扩展名的所有文件 非常感谢 你可以这样做find命令 find name filetype wc l
  • 当 URL 可在浏览器中访问时,SSH Curl 不起作用

    This post is linked with another post of mine still unsolved Laravel 作曲家更新 连接被拒绝 https stackoverflow com questions 52404
  • Mac 10.8.3 上的 fltk 安装

    我正在挣扎fltk在我的 Mac 上安装 我想在Xcode 4 下载文件并解压缩后 尝试按照说明操作 2 3 Configuring FLTK Stay in your FLTK source code directory Type aut
  • 安装 oAuth PECL 错误:无法安装,当前用户无法写入频道“pecl.php.net”的 php_dir

    我尝试在 OS X 上安装 oAuth 但在终端中收到此错误 无法安装 当前用户无法写入频道 pecl php net 的 php dir 我如何让它可写 首先找出php dir在哪里 您可以使用 config get 命令来执行此操作 p
  • 无法打开本地终端

    我尝试在 Android Studio 中初始化我的终端 但它给了我错误 它说 无法打开本地终端 java io IOException 无法创建 PTY 我的电脑运行的是 Windows 10 如何解决这个问题 当您从 Github 存储
  • 如何取消 Postgres 中的错误命令(从终端)?

    我在尝试编写函数时写了一个错误的命令 我在函数中犯了一个错误 并且想在没有完成函数的情况下退出它 并且我想退出它 但是终端的命令提示符不允许我退出 我试过这个 https unix stackexchange com questions 4
  • 在 Mac 上使用 JRE 打开 jar 文件

    我有一个 jar 文件 旨在通过命令行运行 我不打算在运行应用程序的机器上进行任何java开发 我的思考过程是 因此我应该只需要JRE而不是JDK 此外 JDK 大约是 JRE 的 4 倍 我不想下载它 在 Mac 上安装 JRE 时 它不
  • 如何在 Xamarin.Mac 中执行终端命令并读入其输出

    我们正在编写一个 Xamarin Mac 应用程序 我们需要执行像 uptime 这样的命令 并将其输出读取到应用程序中进行解析 这可以做到吗 在 Swift 和 Objective C 中都有 NTask 但我似乎无法在 C 中找到任何示
  • 在 mac 终端中加载库时出错

    有谁请帮忙 我该如何修复以下错误 dyld Library not loaded usr local lib libgdbm 4 dylib Referenced from usr local bin zsh Reason image no

随机推荐

  • 反转字符串的 Python 程序

    字符串是字符序列 在Python中 字符串是字符数据的有序序列 因此可以用这种语言进行索引 Python 不支持字符类型 但它们被视为长度为 1 的字符串 也被视为子字符串 大多数编程面试中的一个常见问题是关于在 Python 中反转字符串
  • 如何在 Ubuntu 18.04 和 16.04 上使用 Let’s Encrypt 保护 Apache

    Let s Encrypt 是一家证书颁发机构 CA 免费提供免费的 SSL TLS 证书以增强安全性 您可以为任何域 子域生成 CA 签署的 SSL 证书 无需任何成本并在您的服务器上使用 它还提供了自动续订 SSL 证书以供长期使用的选
  • 如何在 CentOS 8 上安装和配置 Gitlab

    Gitlab是源代码管理应用工具 它是 Github 的最佳替代品 它还为自托管版本的用户提供了一个选项 您只需安装Gitlab服务器即可充分利用其出色的功能 本教程将帮助您在 CentOS 8 Linux 系统上安装和配置 Gitlab
  • 如何在 Ubuntu 16.04 LTS 上安装 MySQL 5.7

    MySQL 是一个开源关系数据库管理系统 本教程将帮助您在 Ubuntu 和 Debian 系统上安装 MySQL 服务器 与之前的版本相比 该版本有多项安全改进 步骤 1 配置 Apt 存储库 下载 MySQL 团队官方提供的 MySQL
  • 如何在 Linux 上禁用 IPv6

    IPv6是下一代互联网协议 旨在取代当前的互联网协议 IP 版本 4 两个设备之间的通信需要 IP 地址 它是互联网上计算机的身份 本文将帮助您从 Linux 机器中禁用 IPv6 1 检查 IPv6 地址 Use 如果配置命令查看系统上当
  • 如何使用命令行备份 SAP HANA 数据库

    SAP HANA是一个内存数据平台 可部署为本地设备或云中 它是一个革命性的平台 最适合执行实时分析以及开发和部署实时应用程序 点击here了解有关 SAP HANA 的更多信息 使用以下步骤使用命令行备份 SAP HANA 数据库 仅建议
  • 如何从 Linux 系统中完全删除 MySQL

    MySQL 是一种流行的开源关系数据库管理系统 然而 有时由于各种原因 您可能需要从 Linux 系统中删除 MySQL 例如升级到新版本 替换为其他数据库系统或干脆卸载它 在本文中 我们将向您展示如何以安全有效的方式从 Linux 系统中
  • 如何在 Linux 中强制用户下次登录时更改密码

    所有的Linux系统都将用户信息保存在 etc passwd and etc shadow文件 用户密码和帐户期限详细信息存储在影子文件中 时效信息包含密码更改和帐户状态的详细信息 在本教程中 您将了解如何在 Linux 中强制用户更改密码
  • 如何在 Ubuntu 22.04 和 20.04 上安装和使用 Rkhunter

    Rkhunter 是 Rootkit Hunter 的缩写 是一种开源安全工具 可扫描 Linux 和 Unix 系统中的 rootkit 后门和其他可能的安全威胁 它是任何具有安全意识的用户工具包的重要补充 本文将提供有关如何在 Ubun
  • 如何在 Ubuntu 20.04 上安装 Anaconda

    Anaconda 是一个用于 R 编程和 Python 的开源平台 其中包含各种各样的包和存储库 它的功能很重要 因为它提供大规模的处理和计算数据 并且还可以用Python语言进行编程 Anaconda 是一个很好的 Python 应用程序
  • 如何在 Java 中使用三元运算符并举例

    与其他编程语言一样 Java 也提供了三元运算符 三元运算符是 if then else 语句的简单单行语句 三元运算符使用 and 简单 一个简单的三元运算符的工作原理类似于如果 那么 否则陈述 如果任何条件计算为 true 则执行 tr
  • 如何使您的功能分支保持最新。

    在 git 存储库中为新功能创建单独的分支是个好主意 在这种情况下 不要忘记使您的功能分支与主分支保持同步 因此 请定期更新您的功能分支 以避免任何合并冲突 本教程将帮助您从父分支更新功能分支 我们假设您的父分支是 master 执行以下命
  • 如何在 CentOS/RHEL 8 上安装 PHP 8

    PHP 8 0 是 PHP 团队于 2020 年 11 月 26 日发布的重大更新 较之前版本包含大量新功能和优化 要了解更多信息 请阅读PHP 8 变更日志 REMI 和 EPEL 是最流行的存储库 包含用于安装的最新 RPM 软件包 它
  • 什么是开放系统互连 (OSI) 模型?

    The 开放系统互连 OSI 模型是网络中的一个重要概念 您必须理解它才能掌握数据在网络中传输的方式 如果您是网络世界的新手 这份综合指南将为您提供 OSI 模型的扎实介绍 什么是 OSI 模型 OSI 模型是一个概念框架 用于标准化通信或
  • 如何将 Ubuntu 升级到 22.04 LTS (Jammy Jellyfish)

    Ubuntu 22 04 LTS Jammy Jellyfish 已于 2022 年 4 月 21 日发布 该版本将支持到 2027 年 升级谁 Ubuntu 桌面和开发用户可以立即升级到 Ubuntu 22 04 LTS 但Ubuntu服
  • 使用 Curl 传递自定义标头:实用指南

    Curl 是一个强大的命令行工具 世界各地的开发人员都使用它来通过 URL 传输数据 Curl 是一种多功能工具 支持各种协议 例如 HTTP HTTPS FTP 等 Curl 的宝贵功能之一是它能够在发出请求时传递自定义标头 本文旨在深入
  • Linux 中的 ls 命令(列出文件和目录)

    ls是任何 Linux 用户都应该知道的基本命令之一 The ls命令列出文件系统中的文件和目录 并显示有关它们的详细信息 它是安装在所有 Linux 发行版上的 GNU 核心实用程序包的一部分 本文将通过实际示例和最常见 ls 选项的详细
  • 如何在 CentOS 7 上安装 WildFly (JBoss)

    WildFly 以前称为 JBoss 是一个用 Java 编写的跨平台开源应用程序运行时 可帮助您构建令人惊叹的应用程序 WildFly 灵活 轻量 并且基于可根据需要添加或删除的可插拔子系统 本教程介绍如何在 CentOS 7 上安装 W
  • 如何在 CentOS 上启用 EPEL 存储库

    EPEL Extra Packages for Enterprise Linux 存储库提供了标准 Red Hat 和 CentOS 存储库中未包含的附加软件包 创建 EPEL 存储库是因为 Fedora 贡献者希望使用他们在 Red Ha
  • Linux 中的 who 命令

    在这篇文章中 我们解释了who捆绑在 GNU coreutils 包中的命令 who是一个命令行实用程序 用于打印当前登录用户的列表 它还可以显示当前的运行级别 上次系统启动的时间等 如何使用who命令 的基本语法为who命令如下 who