ฉันรู้ว่ามี/etc/group
ไฟล์ที่แสดงกลุ่มผู้ใช้ทั้งหมด
ฉันต้องการทราบว่ามีคำสั่งง่าย ๆ ในการแสดงรายชื่อกลุ่มผู้ใช้ทั้งหมดแม้จะทำการแจง/etc/group
ไฟล์ที่อ่านได้ทั่วโลก ฉันยินดีที่จะสร้างเว็บเพจผู้ดูแลระบบที่แสดงชื่อกลุ่มบัญชี Linux
ฉันรู้ว่ามี/etc/group
ไฟล์ที่แสดงกลุ่มผู้ใช้ทั้งหมด
ฉันต้องการทราบว่ามีคำสั่งง่าย ๆ ในการแสดงรายชื่อกลุ่มผู้ใช้ทั้งหมดแม้จะทำการแจง/etc/group
ไฟล์ที่อ่านได้ทั่วโลก ฉันยินดีที่จะสร้างเว็บเพจผู้ดูแลระบบที่แสดงชื่อกลุ่มบัญชี Linux
คำตอบ:
ในการแสดงรายการกลุ่มโลคัลทั้งหมดที่มีผู้ใช้ที่กำหนดให้ใช้คำสั่งนี้:
cut -d: -f1 /etc/group | sort
สำหรับข้อมูลเพิ่มเติม -> กลุ่ม Unix , คำสั่ง Cut , คำสั่ง sort
cut
เป็นอีกคำสั่งที่แยกคอลัมน์เฉพาะจากอินพุต ที่นี่ฉันกำลังแยกฟิลด์ 1 ที่คั่นด้วยฟิลด์:
หากคุณต้องการให้ทุกกลุ่มรู้จักระบบฉันขอแนะนำให้ใช้getent group
แทนการแยกวิเคราะห์/etc/group
:
getent group
เหตุผลก็คือในระบบเครือข่ายกลุ่มอาจไม่เพียง แต่อ่านจาก/etc/group
ไฟล์ แต่ยังได้รับผ่าน LDAP หรือสมุดหน้าเหลือง (รายการของกลุ่มที่รู้จักมาจากไฟล์กลุ่มโลคัลและกลุ่มที่ได้รับผ่าน LDAP หรือ YP ในกรณีเหล่านี้)
หากคุณต้องการเพียงชื่อกลุ่มคุณสามารถใช้:
getent group | cut -d: -f1
getent group | cut -d: -f1 | sort
getent group | cut -d: -f1 | sort | cat -n
หากสายหมายเลขที่ต้องการทำ
บน Linux, macOS และ Unix เพื่อแสดงกลุ่มที่คุณอยู่ให้ใช้:
id -Gn
ซึ่งเทียบเท่ากับgroups
ยูทิลิตี้ที่ล้าสมัยบน Unix (ตามคู่มือ Unix )
บน macOS และ Unix แนะนำให้ใช้คำสั่งid -p
สำหรับการโต้ตอบปกติ
คำอธิบายของพารามิเตอร์:
-G
,--groups
- พิมพ์รหัสของกลุ่มทั้งหมด
-n
,--name
- พิมพ์ชื่อแทนหมายเลขสำหรับ-ugG
-p
- สร้างเอาต์พุตที่มนุษย์อ่านได้
id -Gn someusername
ส่งคืนรายการกลุ่มสำหรับผู้ใช้ที่ระบุ
id -Gnz | xargs -0 -I% echo %
จะแสดงแต่ละกลุ่มในบรรทัดแยกกัน สิ่งนี้มีประโยชน์หากชื่อกลุ่มมีช่องว่าง
groups
ล้าสมัย? แหล่งใดบ้าง? ฉันค้นหา "unix groups command ล้าสมัย" แต่ไม่พบสิ่งใด
groups
หน้าคู่มือสำหรับ