Saya tahu ada /etc/group
file yang mencantumkan semua grup pengguna.
Saya ingin tahu apakah ada perintah sederhana untuk mencantumkan semua nama grup pengguna meskipun telah mem-parsing /etc/group
file yang dapat dibaca dunia . Saya bersedia membuat halaman web administrator yang mencantumkan nama grup akun Linux.
Jawaban:
Untuk membuat daftar semua grup lokal yang ditugaskan pengguna untuknya, gunakan perintah ini:
Untuk info lebih lanjut-> Unix groups , Cut command , sort command
sumber
cut
adalah perintah lain yang mengekstrak kolom spesifik dari input. Di sini saya mengekstraksi bidang 1 di mana bidang dibatasi oleh:
Jika Anda ingin semua grup diketahui oleh sistem, saya sarankan menggunakan
getent group
daripada parsing/etc/group
:Alasannya adalah bahwa pada sistem jaringan, grup tidak hanya membaca dari
/etc/group
file, tetapi juga diperoleh melalui LDAP atau Yellow Pages (daftar grup yang diketahui berasal dari file grup lokal ditambah grup yang diterima melalui LDAP atau YP dalam kasus ini).Jika Anda ingin hanya nama grup yang dapat Anda gunakan:
sumber
getent group | cut -d: -f1 | sort
getent group | cut -d: -f1 | sort | cat -n
.Di Linux, macOS dan Unix untuk menampilkan grup tempat Anda berada, gunakan:
yang setara dengan
groups
utilitas yang sudah usang di Unix (sesuai manual Unix ).Pada macOS dan Unix, perintah
id -p
disarankan untuk interaktif normal.Penjelasan parameter:
sumber
id -Gn someusername
mengembalikan daftar grup untuk pengguna yang ditentukan.id -Gnz | xargs -0 -I% echo %
akan membuat daftar masing-masing grup pada baris terpisah. Ini berguna jika nama grup memiliki spasi di dalamnya.groups
usang? Ada sumber? Saya mencari "perintah unix groups usang" tetapi tidak menemukan apa pun.groups
.