Поиск по сайту:
Наш воспитатель — наша действительность (М. Горький).

Как найти текущую учетную запись пользователя в Linux

11.03.2024
Как найти текущую учетную запись пользователя в Linux

Самый простой способ найти текущего пользователя – это открыть терминал, который покажет имя пользователя и имя хоста.

Запутался? Позвольте нам показать вам:

andreyex@destroyer:~$

 

где:

  • andreyex – Имя пользователя
  • destroyer – Имя сервера

 

Другой способ – использовать переменную среды $USER.

Но что, если вы хотите использовать эти данные в bash-скрипте? Или вы хотите найти текущего пользователя в bash-скрипте? Что ж, в этой статье такие вопросы будут рассмотрены более подробно.

 

Найти текущую учетную запись пользователя в Linux

В этой статье мы расскажем вам о следующих способах поиска текущей учетной записи пользователя в Linux:

  • С помощью команды who
  • С помощью команды whoami (дополнительные флаги не требуются)
  • Используя переменную окружения $USER (лучше всего подходит для bash-скрипта)

 

Каждое из этих пояснений к командам будет включать выполнение командной строки, а также то, как это можно использовать в скрипте bash, чтобы вы могли получить максимальную отдачу от каждого из них.

 

1. Используя команду who

Чтобы узнать текущего вошедшего в систему пользователя с помощью команды who, все, что вам нужно сделать, это выполнить команду who следующим образом:

who
andreyex   :1      2024-03-11 12:45 (:1)

 

Вы увидите текущего пользователя вместе с некоторой дополнительной информацией, где:

  • :1 указывает, что пользователь подключен ко второму графическому дисплею (X сеанс Windows).
  • 2024-03-11 12:45 это дата и время, когда пользователь вошел в систему.
Читать  Удалить папку в Bash

 

Если бы вы использовали команду who только для получения имени пользователя, вам пришлось бы внести некоторые изменения.

Здесь я использовал команду awk, чтобы напечатать только имя пользователя, удалив всю остальную дополнительную информацию:

who | awk '{print $1}'

 

andreyex@destroyer:~$ who | awk '{print $1}'

andreyex

 

С помощью команды who в скрипте bash

Чтобы использовать команду who для поиска текущей учетной записи пользователя, вы можете использовать команду who с аргументом awk и присвоить его переменной, как показано здесь:

#!/bin/bash

# Получите текущую учетную запись пользователя, используя who и awk
current_user=$(who | awk '{print $1}')

echo "The current user is: $current_user"

 

При выполнении это выдаст вам следующий результат:

andreyex@destroyer:~$ ./who.sh

The current user is: andreyex

 

2. Использование команды whoami

В отличие от команды who, когда вы выполняете команду whoami в Linux, она выводит только имя пользователя текущего вошедшего в систему пользователя:

whoami

 

andreyex@destroyer:~$ whoami

andreyex

 

Да, никаких дополнительных флагов не требуется! Сразу к делу.

 

С помощью команды whoami в скрипте bash

Если вы хотите найти текущую учетную запись пользователя с помощью команды whoami, ее можно вычислить в скрипте bash следующим образом:

#!/bin/bash

# Получите текущего пользователя, вошедшего в систему, с помощью whoami
current_user=$(whoami)

echo "The currently logged-in user is: $current_user"

 

Если вы решите использовать приведенный выше скрипт, ожидайте следующего вывода:

andreyex@destroyer:~$ ./who.sh

The currently logged-in user is: andreyex

 

Читать  Использование команды Dirname в Linux в скриптах Bash

3. Использование переменной среды $USER

Чтобы использовать переменную среды $USER в скрипте bash для поиска текущего пользователя, вам нужно соединить ее с командой echo, как показано на рисунке:

echo $USER

 

andreyex@destroyer:~$ echo $USER

andreyex

 

Теперь давайте посмотрим на ту часть скрипта bash, где он предназначен для использования!

 

Используя переменную среды $USER в скрипте bash

Если вы хотите использовать скрипт bash для поиска текущего пользователя, это может быть идеальным примером, поскольку вам не нужно присваивать его какой-либо переменной.

Конечно, вы можете добиться аналогичных результатов с помощью команд (используя $(command)), но все же мы считаем это самым простым способом.

Вот как вы можете использовать переменную среды $USER в скрипте bash:

#!/bin/bash

echo "The current user is: $USER"

 

Да, простая однострочная команда, и при выполнении она даст вам те же результаты, что и две предыдущие команды:

andreyex@destroyer:~$ ./USER.sh

The current user is: andreyex

 

Вот как управлять несколькими пользователями

Если вы системный администратор и хотите, чтобы пользователи принудительно меняли свой пароль при следующем входе в систему, вот подробное руководство, объясняющее, как заставить пользователей изменить пароль:

Вы также можете удалять учетные записи пользователей с помощью команды userdel:

Вы также можете изменять учетные записи пользователей с помощью команды usermod:

Мы надеемся, что вы найдете это руководство полезным.

Читать  Добавляем пользователя в Sudoers в Debian 12

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Рекомендуемое
Утечка тестов показывает, что загадочный Samsung Galaxy Book 4 Edge…

Спасибо!

Теперь редакторы в курсе.