Как да изброите всички потребители в Linux

Как да изброите всички потребители в Linux

Потребителите са най -важният компонент в Linux система. Linux предоставя вградени команди на администраторите, които им позволяват да управляват ефективно потребителите. Има един за създаване на потребители, изтриване на потребители и промяна на потребителските разрешения. Но какво да кажем за изброяването на всички потребители, които в момента присъстват в системата?





В тази статия ще обсъдим как можете да получите списък с всички потребители в Linux, заедно с кратко ръководство за проверка дали потребител съществува в система или не.





Как да покажете списък с всички потребители в Linux

Когато създавате нов потребител, потребителското име, паролата и други подробности се съхраняват в определени файлове на Linux машина. За щастие, Linux ви позволява да четете и променяте такива файлове без никакви ограничения. Използвайки тези файлове, можете да знаете информация, свързана с потребителите, като техните потребителски имена, броя на потребителите и др.





Използване на Passwd файла

The passwd file е текстов файл, който съдържа записите за пароли на всички потребители, които в момента присъстват във вашата система. Този файл се намира в /и т.н. директория в локалното ви хранилище и съдържа следната информация:

  1. Потребителски имена
  2. Шифровани пароли
  3. User ID
  4. Идентификатор на групата на потребителя
  5. Пълно име
  6. The /У дома директория на потребителя
  7. Черупка за вход на потребителя

Тип cat /etc /passwd или по -малко /etc /passwd във вашия терминал, за да прочетете текстовия файл. Отваряне на /etc/passwd file ще генерира изход, който изглежда така.



root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

Гореспоменатият изход съдържа седем полета, които съдържат информация, свързана с потребителите. Тези полета са разделени с разделител-в този случай двоеточие. Всеки ред в изхода обозначава един потребител.

За да получите списък с всички потребителски имена с помощта на passwd файл:





awk -F: '{ print }' /etc/passwd

Awk е помощна програма за командния ред, която позволява на потребителите на Linux да създават прости програми с един ред, които извършват бързи операции от терминала. В гореспоменатия код:

  1. -F означава разделител на полета. Тъй като знакът за двоеточие е разделителят в /etc/passwd файл, предаваме двоеточието като разделител в командата awk.
  2. {отпечатайте $ 1} инструктира системата да отпечата първото поле. В този случай първото поле е потребителското име на потребителите.
  3. /etc/passwd файлът съдържа данните, свързани с потребителите.

Изпълнението на горната команда ще изведе потребителските имена на всички потребители. Тъй като /etc/passwd файлът съдържа системни потребители, изходът ще включва и техните потребителски имена.





root
daemon
bin
sys
sync
games
man

Можете да промените леко командата awk, за да отпечатате пълните имена на потребителите. Въведете следната команда, за да покажете пълните имена на потребителите в Linux:

awk -F: '{ print }' /etc/passwd

Тъй като потребителите на системата имат едно и също потребителско име и пълно име, няма да забележите разлика в изхода. Само потребителите, които сте добавили към вашата система, ще имат различни потребителски имена и пълни имена.

Като алтернатива можете също да използвате разрез вместо командата awk. Синтаксисът на cut е доста подобен на командата awk.

За да отпечатате потребителските имена в Linux с помощта на cut:

cut -d: f1 /etc/passwd

Тук, е разделителят, f1 означава първото поле (потребителско име) и /etc/passwd е текстовият файл, който съдържа данните.

разберете какво е изтрито видео в youtube

За да отпечатате имената на потребителите с помощта на cut:

cut -d: f5 /etc/passwd

По същия начин можете да изведете други полета от /etc/passwd файл, като просто го замените f5 с f1-f7 .

Свързани: Как да промените паролата си за Linux

Списък на потребителите с командата getent

Командата getent отпечатва съдържанието на важни текстови файлове, които действат като база данни за системата. Файлове като /etc/passwd и /etc/nsswitch.conf съдържат информация, свързана съответно с потребители и мрежи и могат да бъдат прочетени с помощта на командата getent.

как да създадете Windows 10 инсталирайте USB

За да отпечатате съдържанието на /etc/passwd файл с помощта на getent:

getent passwd

Изходът ще съдържа седем различни полета, разделени от знака на двоеточието. Всяко поле е запазено за конкретна информация, включително потребителските имена и пътищата на домашната директория на потребителите.

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

Можете да свържете веригата командата getent с awk или cut, за да получите само списъка с потребителски имена.

getent passwd | awk -F: '{print }'
getent passwd | cut -d: -f1

За да отпечатате пълните имена на потребителите:

getent passwd | awk -F: '{print }'
getent passwd | cut -d: -f5

Проверете дали потребител съществува или не

В някои ситуации може да искате да проверите дали потребител съществува във вашата Linux система или не. The захващане командата е полезна, когато искате да вземете определен текстов модел от файл.

Можете да използвате някоя от следните команди, за да проверите съществуването на потребител.

compgen -u | grep username
getent passwd | grep username

Ако потребителят съществува, свързаната с него информация за вход ще се покаже на екрана. От друга страна, ако потребителят не присъства в системата, ще възникне грешка.

За да проверите дали потребител съществува в система, без да използвате grep:

getent passwd username

Можете също така да подадете тръбопровода гетент или compgen команда с захващане и изхвърлен за показване на персонализиран изход.

getent passwd | grep -q username && echo 'User found' || echo 'User not found'
compgen -u | grep -q username && echo 'User found' || echo 'User not found'

Горната команда ще отпечата „Потребител е намерен“, ако потребителят съществува в системата, и „Потребител не е намерен“, ако не съществува.

Пребройте броя потребители в системата

За да преброите броя потребители, които съществуват в Linux система:

compgen -u | wc -l
getent passwd | wc -l

В горните команди, compgen и гетент са отговорни за показването на списъка, съдържащ всички потребители и друга информация, свързана с тях. The тоалетна означава броя на думите и се използва за преброяване на броя думи или редове в изхода. The -на флаг означава Линии .

Проверка на потребителски акаунти в Linux

Всеки администратор на Linux трябва да знае как може да управлява и администрира други потребители в системата. Овладяването на Linux команди, които ви позволяват да създавате, премахвате, контролирате и изброявате други потребители, е чудесен начин да започнете с управлението на потребителите.

Запознаването с Linux средата трябва да бъде първата ви цел, ако сте само начинаещ. След като инсталирате първата си дистрибуция на Linux, трябва да направите някои неща. Изучаването на някои основни команди е една от тях и е от съществено значение за изпълнението на прости компютърни задачи в Linux.

Дял Дял Туит електронна поща Как да започнете да използвате Linux

Интересувате се от използването на Linux, но не знаете откъде да започнете? Научете как да използвате Linux, от избора на дистрибуция до инсталирането на приложения.

Прочетете Напред
Свързани теми
  • Linux
  • Linux
За автора Дийпеш Шарма(79 статии са публикувани)

Deepesh е младши редактор за Linux в MUO. Той пише информационни ръководства за Linux, като има за цел да осигури блажено преживяване на всички новодошли. Не съм сигурен за филмите, но ако искате да говорите за технологии, той е вашият човек. В свободното си време можете да го намерите да чете книги, да слуша различни музикални жанрове или да свири на китара.

Още от Deepesh Sharma

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате
Категория Linux