2012-06-06 18 views
10

Làm cách nào để nhận id nhóm của nhóm trong mac os hoặc linux? .Lệnh để lấy nhóm tên nhóm trong mac hoặc linux là gì?

tức, Command GroupName ==> nên trả lại GROUPID

Ví dụ:

Command staff ==> 20 
+2

Nhưng lệnh này được yêu cầu để phát triển sản phẩm của tôi. tức là, trong tập lệnh shell cài đặt – Rajasekhar

+0

Đây là câu hỏi hợp lệ và không tầm thường và phải được mở lại. – ulidtko

+1

@ulidtko: nó không hợp lệ cho Stack Overflow, không may, vì các quy tắc khá chặt chẽ những ngày này so với trước đây. Bạn đang làm điều đúng yêu cầu trong SOCVR mặc dù. – halfer

Trả lời

20

Trên Linux, bạn có thể sử dụng getent(1):

$ getent group staff 
staff:x:20: 

Nếu bạn chỉ muốn 20:

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

Trên OS X, bạn có thể sử dụng dscl(1):

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

Nó có thể được dễ dàng hơn để sử dụng lệnh python đơn giản này (sử dụng grp library) để có kết quả tương tự trên cả hai nền tảng:

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

Nó cũng có thể được thực hiện bằng ruby: 'ruby -e' yêu cầu "vv"; đặt Etc :: getgrnam ("staff"). gid'' –

+0

dễ dàng hơn: 'stat -c '% g' tập tin-path' hoặc cho mac:' stat -f '% g' file-path' –

Các vấn đề liên quan