2012-06-06 33 views
10

如何在mac os或linux中獲取組的組ID? 。在mac或linux中獲取組名稱的groupid命令是什麼?

即命令組名==>應該返回GROUPID

如:

Command staff ==> 20 
+2

但這個命令是我的產品開發所必需的。即在安裝shell腳本中 – Rajasekhar

+0

這是一個有效且不平凡的問題,應該重新打開。 – ulidtko

+1

@ulidtko:不幸的是,它不適用於Stack Overflow,因爲現在的規則比以前更嚴格。儘管你在SOCVR中做正確的事情。 – halfer

回答

20

在Linux上,你可以使用getent(1)

$ getent group staff 
staff:x:20: 

如果你只想要20:

$ getent group staff | cut -d: -f3 
20 

在OS X,你可以使用dscl(1)

$ dscl . -read /Groups/staff | awk '($1 == "PrimaryGroupID:") { print $2 }' 
20 

它可以更容易使用這個簡單的Python命令(使用grp library)有兩個平臺上相同的結果:

$ python -c 'import grp; print grp.getgrnam("staff").gr_gid' 
20 
+0

它也可以在ruby中完成:'ruby -e'需要「etc」;放入Etc :: getgrnam(「staff」)。gid'' –

+0

更簡單:'stat -c'%g'file-path'或for mac:'stat -f'%g'file-path' –

相關問題