【发布时间】:2015-01-27 13:53:53
【问题描述】:
我正在使用一个在 AIX 上运行的应用程序,它不提供有关当前正在使用该系统的用户的任何信息。相反,它只有一个实用程序 userInfo,它列出了数据库中的所有用户 ID 和用户名:
>userInfo <path to app> -list
696969 Doe, John
123456 Doe, Jane
121212 Jones, Mike
232323 Sanders, Chris
345678 Smith, Mary
等等……
我检索当前在系统中的用户的方法是首先搜索活动用户会话这将返回一个带有用户 ID(数字)的字符串,格式如下。
>ps –ef | grep <app name> | grep user
<process name and path info…> -user 696969 <more process and path info>
<process name and path info…> -user 121212 <more process and path info>
然后使用 grep 运行 userInfo 实用程序
>userInfo <path to app> -list | grep 696969
696969 Doe, John
问题在于,这都是手动的,并且必须为 ps –ef 找到的每个单独的用户 ID 重复。当系统中有很多用户时,这需要很长时间,而且我通常被要求在很短的时间内发送一个活跃用户列表。 我想创建一个脚本来自动化这个过程。最好在 KSH 中,但 bash 也可以。我可以运行该脚本,它会为我提供当前用户 ID 和名称的列表:
>script.ksh
696969 Doe, John
232323 Sanders, Chris
345678 Smith, Mary
我将不胜感激。 谢谢
【问题讨论】: