Se você está bem também chmod'ing o diretório atual, faça isso e deixe -R
fazer o trabalho pesado. -R
não ignora arquivos ocultos.
sudo chmod -R 775 .
Como recursivamente executo chmod
ou chown
para arquivos ocultos?
sudo chmod -R 775 *
não funciona em arquivos ocultos.
O mesmo vale para sudo chown -R user:group
.
*
não inclui arquivos ocultos por padrão, mas se você estiver no bash, poderá fazer isso com:
shopt -s dotglob
Leia mais sobre isso no bash's builtin
manual :
If set, Bash includes filenames beginning with a '.' in the results of filename expansion.
Isso fará com que *
também inclua arquivos ocultos.
chmod -R 775 *
Desative-o com:
shopt -u dotglob
Outra opção é usar find
i como você pode ter um controle muito refinado sobre isso.
find <path to start from> -exec chown <options> {} \+
find -path '<path to include>' -exec chown <options> {} \+
A única desvantagem é que find
tem uma sintaxe diferente em versões diferentes.
Todos os arquivos no diretório atual, recursivamente, incluindo arquivos ocultos:
chmod 755 -R ./* ./.[!.]*
Todos os arquivos no diretório atual, não recursivamente, incluindo arquivos ocultos:
chmod 755 ./* ./.[!.]*
Isso não irá alterar um nome de arquivo de exceção começando com 2 pontos, como por exemplo, "./..thisonescapesunharmed.txt"
Além disso, tenha cuidado para não remover o bit "x", ou então todos os seus diretórios não estarão acessíveis (é necessário o bit x para fazer o cd em um diretório).
Lembre-se deste alerta: nunca use *
, mas ./*
em seu lugar.
Para evitar problemas na configuração de permissões em diretórios, use find
.
find . -type f -exec chmod 'VALUE' {} \;