我想寫一個shell腳本,檢查一個用戶所在的所有組,并為每個組顯示<username>是該組的一部分<group>。我做了這個腳本,但它沒有顯示用戶的名字。以下是我的腳本:
GroupsOfUser(){
for i in$(groups) ; do
echo "$i"/span> "is part of" "$()"
done。
}
GroupsOfUser '/etc/group/passwd'
我應該在腳本中添加什么命令,以便它向我顯示所有組的用戶名?
我是編程方面的新手,兩天來一直在試圖找到一個解決方案。
uj5u.com熱心網友回復:
系統變數$USER包含當前用戶的賬戶名。也許還可以看一下id命令。
for i in $(group); do>
echo "$USER是$i的一部分"。
done
或者更簡潔的說
printf "$USER is part of %s
" $(group)
單獨使用groups命令通常更有用;Unix實用程式往往只列印你實際需要的資訊,這使得使用它們建立更復雜的腳本更容易(盡管有常見的例外,如ps和df,因此有成千上萬的腳本必須為其輸出重新發明決議器)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/324946.html
標籤:
