Shell-Script

獲取使用者列表的組名

  • June 3, 2015

我有一個包含使用者列表的文本文件,格式如下:

name1   
name2   
name3   
...

呼叫命令 groups 會給出該使用者的主要組名稱。前任:

bash$ groups name1
name1: group_Name

我想獲取文本文件的所有使用者的組並將這個組列表放入一個新的文本文件中。

有誰知道這個命令?也許一個腳本會使用名稱迭代第一個文件並在每個名稱上呼叫組,然後將輸出儲存在一個新文件中。我只需要一些細節方面的幫助。

逐行讀取文件,groups為每個項目呼叫:

while read name ; do groups "$name" ; done < list.txt > with_groups.txt

循環通常可以替換為xargs

xargs groups < list.txt > with_groups.txt

像這樣的東西怎麼樣:

#!/bin/bash
while read ID
do 
   groups $ID
done < input.file |
awk '{print $3}' | sort | uniq > list_of_groups

這將為您提供一個按詞法排序的唯一組名列表。

引用自:https://unix.stackexchange.com/questions/207377