2

我正在编写一个脚本,需要在与 QNX 和 POSIX 兼容的 Linux 兼容的文件中找到完全匹配的文件

更多详情:

我试图找到一个进程的用户,所以我写的原始命令是

user=$(ps -aux | awk '{print $1 " " $2}' | grep -w ${process} | awk '{}print $1')

在符合 POSIX 的 Linux 中完美运行

但是,QNX 并不完全符合 POSIX,并且grep -w不适用于我的目标......所以我需要找到一个完全匹配的grep -w

4

2 回答 2

1

如果字段 2 完全匹配某些内容,我认为您想打印字段 1:

ps -aux | awk -v p=$process '$2==p{print $1}'
于 2017-07-26T19:00:21.183 回答
0

-w 不是 grep 的有效 POSIX 选项,不应将其用于应该在 POSIX 系统之间可移植的应用程序。总是可以 ps -p $1 -o user= 吗?如果用户可能与进程 ID 相同,您将如何处理 grep 和 awk?

于 2017-07-26T17:53:33.720 回答