Alterando permissões em arquivos ou somente nos diretórios

Publicado por Carlos Henrique Y Furushima em 03/06/2013

[ Hits: 14.774 ]

Blog: http://dbafurushima.com.br/index.html

 


Alterando permissões em arquivos ou somente nos diretórios



Em mais um dia de trabalho, me deparei com uma necessidade, onde não há um comando, ou parâmetro, pronto para executar essa tarefa (pelo menos não conheço!):
  • Alterar permissões somente dos arquivos nos diretórios.
  • Alterar permissões somente dos diretórios.

Parece simples, mas não é... Suponha que eu queira fazer um chmod 775 somente dos arquivos nos diretórios ou somente dos diretórios.

Temos duas alternativas: 1. Usar find juntamente com o parâmetro exec:

find <Diretório Raiz> -type <Tipo do arquivo> -exec chmod 775 "{}" \;

Onde:
  • <Diretório Raiz> :: A partir de qual diretório quero varrer, ou seja, qual a raiz da estrutura de diretórios.
  • <Tipo do arquivo> :: "d" para diretório, ou "f" para arquivos ou file.

Para diretório:

find /oracle -type d -exec chmod 775 "{}" \;

Para arquivos:

find /oracle -type f -exec chmod 775 "{}" \;

2. Usar find jogando sua saída padrão para o comando xargs com parâmetro chmod 775:

find <Diretório Raiz> -type <Tipo do arquivo> | xargs chmod 775

Onde:
  • <Diretório Raiz> :: A partir de qual diretório quero varrer, ou seja, qual a raiz da estrutura de diretórios.
  • <Tipo do arquivo> :: "d" para diretório, ou "f" para arquivos ou file.

Para diretório:

find /oracle -type d | xargs chmod 775

Para arquivos:

find /oracle -type f | xargs chmod 775


Visite meu Portal de Conhecimento.
Carlos Henrique Yakithi Furushima - DBA Oracle

"A maior recompensa do nosso trabalho não é o que nos pagam por ele, mas aquilo em que ele nos transforma."
- John Ruskin


Outras dicas deste autor

Onde está o "rc.local" no SUSE Linux

Logical Volume Manager - LVM (GNU/Linux)

cpuinfo - Verificando CPU e Core

SQL*Plus em modo silencioso

Desvendando o Hardware no GNU/Linux - Slots de memória

Leitura recomendada

Programa para alteração de GRUB e USPLASH (Ubuntu)

Implementando servidor de horas no Linux

Squid - Limitar banda para determinados sites e IPs

Sample Xlet

Configuração do Openfire 3.7 no Ubuntu 11.04

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts