我正在尝试让一个 oracle 6.2 系统(与 redhat 6.2 相同)来查找系统上的所有用户,然后获取每个发现的用户的用户名并单独查询每个用户的组成员身份,并每月输出一次文件,所以我需要将命令编写为shell脚本并安排
我对 Linux 很陌生,似乎有很多方法可以调用用户和组成员身份。我目前正在使用以下内容输出要归档的用户列表。
getent passwd >> /home/username/users.txt
我真的不知道下一步该做什么。输出总是把用户名放在第一位,所以我想为每行的第一个单词 grep 文件,然后运行
getent group | grep %
其中 % 是每行的第一个单词,并重复该过程直到到达文件末尾,然后停止并将输出转储到网络位置(Windows 共享),即 \windowsserver\share\usersandgroups.csv所以我可以在 excel 中打开文件,并希望在单元格 A1 中有用户名,然后是每个组在他们自己的单元格(B1、C1、D1 等)中,每个用户在一个新行中。如果 getent 不适合这个,任何人都可以建议一个可以完成这项工作的命令吗?我需要用户和组名而不是 ID。
我不一定需要将用户输出到文件中,因此如果可以避免该步骤,那将很有用。
感谢任何可以提供帮助的人。
这是一个衬里:
这直接转储到控制台,如下所示:
更新:要以“纯” .csv 格式获取此文件,您可以使用以下命令:
这会给你
user,group1,group2,group3
,所以对于只在“他们的”组中的用户,你会得到pulse,pulse
(例如)。