Para obter todas as informações fornecidas por ls -l para um único arquivo ou pasta, use a opção -d e especifique o arquivo:
ls -ld filename
Eu sei que ls -l lista as permissões de cada arquivo em um diretório, mas qual é o comando se eu quiser ver as permissões de apenas um arquivo específico?
Para obter apenas o modo:
stat -c %a file
(onde file também pode ser um diretório).
Nota: isto é com o comando stat do GNU Coreutils. Caso contrário, a solução depende do sistema.
Se sua intenção é fazer algo dependendo da permissão do arquivo, então, em alguns casos, você pode considerar a declaração condicional simples test (também conhecido como [ ou [[ ):
-r existe e a permissão de leitura é concedida -w existe e a permissão de gravação é concedida -x existe e a permissão de execução é concedida Por exemplo:
[ -w file ] && echo foo >> file
Como as "permissões" não cobrem apenas permissões de unix octal em sistemas Linux modernos, eu gostaria de elaborar um pouco:
Além de stat -c %a file @ vinc17 sugerido, há stat -c %C file para o contexto do SELinux no RHEL Systems e getfacl file para volumes usando ACLs.
namei -m /path/to/file pode ser útil para descobrir todas as permissões octal que levam ao caminho do arquivo, pois permissões erradas nos diretórios pai podem inibir o acesso.
Tags permissions ls files