Как получить разрешения chmod (восьмеричные) в папке в терминале?

18

Я могу посмотреть в свойствах этой папки, но хочу получить свойства быстро и в цифрах (восьмеричные, например, 755 и т. д.)

Что мне вводить в терминал, чтобы узнать chmod файла или папки, которые я хочу?

    
задан Rootical V. 01.06.2012 в 06:35
источник

3 ответа

27
  

Что мне вводить в терминал, чтобы узнать chmod папки, которую я хочу?

stat -c %a FILE_OR_FOLDER_PATH

например. stat -c %a /etc показывает 755

    
ответ дан izx 01.06.2012 в 06:42
источник
4
stat FILE_OR_FOLDER_PATH

это быстрее, но отображает весь фрагмент

    
ответ дан Fernando Rodriguez 08.08.2016 в 15:45
0

Найти GNU

Использует формат %m для флага -printf .

$ find /etc/ -maxdepth 0 -printf "%m\n"                                                                                                                                                 
755

или

$ find /etc/ -prune -printf "%m\n"                                                                                                                                                      
755

Python

$ python -c 'import os,sys;print(oct(os.stat(sys.argv[1]).st_mode))' /etc                                                                                                               
040755

Или, если мы хотим получить только биты разрешения владельца-группы:

$ python -c 'import os,sys;print(oct(os.stat(sys.argv[1]).st_mode)[-3:])' /etc                                                                                                          
755

Perl

Через File::stat , почти так же, как в документации :

$ perl -le 'use File::stat; $fs=stat($ARGV[0]);printf "%o\t%s\n",$fs->mode & 07777,$ARGV[0]' /etc                                                                                       
755 /etc
    
ответ дан Sergiy Kolodyazhnyy 13.07.2017 в 04:42