bash - 在 bash 中获取进程的用户名和进程 ID

标签 bash ps

我正在编写一个 bash 脚本,我需要在其中找出进程的用户 ID。例如,让进程本身就是 bash。

我试过 ps aux | grep ba[s]h 但返回了以下内容:

1000      2745  0.0  0.1  28360  5440 pts/1    Ss   10:11   0:01 bash

我看到显示的用户 ID 1000,但我想要用户名。

最佳答案

如果用户名超过 8 个字符,就会发生这种情况(OR) id 没有名字。但是,如果你想要 ps 输出中的用户名,那么试试这个,

ps -eo uname:20,pid,pcpu,pmem,sz,tty,stat,time,cmd | grep '[b]ash'

关于bash - 在 bash 中获取进程的用户名和进程 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21728288/

相关文章:

php - 我正在将文本从 bash 脚本传递到 php。除 mount 和 unmount bash 命令外,一切正常。我究竟做错了什么?

bash - 当用户以 root 身份运行脚本时获取用户主目录

Linux RSS 和共享内存

python - 从 python 劫持终端 stdin

linux - 如何在不意外包含不相关进程的情况下匹配并终止特定进程?

linux - 查看 linux 中已运行进程的输出

linux - 如何检查字符串是否包含特殊字符(!@#$%^&*()_+)

bash - rm 命令在 shell 内部不起作用

linux - 如何获得多个 bash 后台脚本,从一个初始启动脚本生成以登录到终端的正确行?

python - 如何让 Python apscheduler 在后台运行