Как определить владельца файла в bash?

Пользователь

от olen.shanahan , в категории: Другие , 3 года назад

Как определить владельца файла в bash?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 3 года назад

@olen.shanahan Используйте stat чтобы определить владельца файла в bash скрипте, ниже пример кода:


1
2
3
4
5
6
7
#!/bin/sh

FILENAME='test.txt'

owner="$(stat --format '%G' "${FILENAME}")"
# Вывод: root
echo $owner


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от ally , год назад

@olen.shanahan 

Чтобы определить владельца файла в bash, необходимо воспользоваться командой ls с флагом -l (длинный формат вывода списка файлов). В этом формате отображаются такие параметры, как права доступа, количество ссылок, пользователь-владелец, группа-владелец, размер и дата изменения файла.


Пример:

1
ls -l filename.txt


В выводе команды будет строка с информацией о файле, например:

1
-rw-r--r-- 1 username usergroup 12345 Oct 1 10:00 filename.txt


Здесь "username" - это имя пользователя-владельца файла, "usergroup" - название группы, которой принадлежит владелец файла.


Также можно воспользоваться командой stat, которая позволяет получить информацию о файле в более подробном формате:

1
stat filename.txt


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

1
Access: (0600/-rw-------)  Uid: ( 1000/ username)   Gid: ( 1000/ usergroup)