Задать вопрос
@elBroom

Как определить права доступа к файлу для конкретного пользователя?

Нужно вывести для пользователя test права доступа к файлу test.txt в формате rwx.
Может можно сделать как то более изящно?
У меня получилось так:
user="test";
file1="test.txt";
#USER
res=`stat -c %U $file1`;
if [[ $user == $res ]]; then
  tmp=`stat -c %A $file1 |cut -c2-4`;
  echo $user ":" $tmp;
  continue;
fi

#GROUP
grp=`stat -c %G $file1`;
res=`getent group $grp | awk -F: '{print $4}' | grep -E $user'(,|$)'`
if [[ $res != '' ]]; then
  tmp=`stat -c %A $file1 |cut -c5-7`;
  echo $user ":" $tmp;
  continue;
fi

#OTHER
tmp=`stat -c %A $file1 |cut -c8-10`;
echo $user ":" $tmp;
  • Вопрос задан
  • 533 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
p00h
@p00h
Фехтовальщик-стропальщик
stat -c %a /path/to/file
А вообще, man stat, stat --help
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы