como listar o modo de caminho atual?

7

Se o caminho atual for /data/db_1 e /data tiver três subcaminhos, db_1, db_2, db_3 .

Eu quero saber a modificação, o proprietário e o grupo de db_1 .

Atualmente eu uso ls -li /data |grep db_1 , mas acho que deve haver uma maneira melhor de fazer isso?

    
por Chen Yu 02.03.2015 / 23:54

2 respostas

8

Para ver as permissões do diretório atual, seja o que for, use:

ls -lid .

Como funciona:

  • -l pede ls para uma longa listagem de diretórios.

  • -i pede ls para inode information (opcional).

  • -d informa ls para informar sobre o diretório em si, não sobre o que está nele.

  • . refere-se, como é convencional para o Unix, ao diretório atual.

Como POSIX ls suporta -l , -i e -d options, este método é portátil.

    
por 03.03.2015 / 00:01
7

Não use ls . É geralmente uma má idéia de tentar analisar ls output e existem outras ferramentas especificamente projetadas para o trabalho. Nesse caso, você pode usar stat :

$ stat -c '%G %U %y' .
terdon terdon 2015-03-03 19:37:48.007033824 +0200

Explicação

   -c  --format=FORMAT
          use the specified FORMAT instead of the default; output  a  new‐
          line after each use of FORMAT

   %G     group name of owner
   %U     user name of owner
   %y     time of last modification, human-readable

Portanto, o comando acima imprimirá o usuário ( %U ), o grupo ( %G ) e o tempo de modificação ( %y ) de . , o diretório atual. Ele também pode imprimir outras informações, praticamente tudo o que você precisa. Veja man stat para mais.

    
por 03.03.2015 / 19:09

Tags