Aprenda inglês em casa
Baixe gratuitamente as duas primeiras aulas
English for Reading and Listening
Receba por email, diariamente, mensagens contendo materiais para leitura e audição, incluindo arquivos no formato MP3 gravados por falantes nativos.
|
Busca |
Aprenda inglês em casa
Baixe gratuitamente as duas primeiras aulas
English for Reading and Listening
Receba por email, diariamente, mensagens contendo materiais para leitura e audição, incluindo arquivos no formato MP3 gravados por falantes nativos.
Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 01 de Julho de 2007
Para alterar recursivamente a propriedade de uma árvore de diretórios para uma determinada pessoa e grupo, usamos o comando chown:
chown -R queiroz:queiroz ~queiroz
O argumento queiroz:queiroz identifica o nome do usuário e o grupo ao
qual pertence. Fornecer os dois argumentos é opcional, podemos especificar
apenas o nome do usuário, como abaixo:
chown -R queiroz ~queiroz
Caso queiramos trocar apenas a propriedade do grupo, o comando é outro, chgrp:
chgrp -R queiroz ~queiroz
Até aqui tudo bem. Entretanto, frequentemente usamos os comandos chgrp e chown em conjunto com o comando xargs e find:
find . -type d | xargs chown -R queiroz
Com o comando acima, pretendo alterar apenas a propriedade dos diretórios a partir de um determinado ponto. Se existir algum diretório com um nome que contenha espaços em branco, teremos problema.
# find . -type d | xargs chown -R queiroz chown: impossível acessar `./Rubens': Arquivo ou diretório não encontrado chown: impossível acessar `Queiroz': Arquivo ou diretório não encontrado chown: impossível acessar `de': Arquivo ou diretório não encontrado chown: impossível acessar `Almeida': Arquivo ou diretório não encontrado chown: impossível acessar `./Rubens': Arquivo ou diretório não encontrado chown: impossível acessar `Queiroz': Arquivo ou diretório não encontrado chown: impossível acessar `de': Arquivo ou diretório não encontrado chown: impossível acessar `Almeida/Dia': Arquivo ou diretório não encontrado chown: impossível acessar `de': Arquivo ou diretório não encontrado chown: impossível acessar `Faxina': Arquivo ou diretório não encontrado
No exemplo acima eu criei dois diretórios com espaços em branco em seu nome:
Rubens Queiroz de Almeida e Dia de Faxina. O comando xargs forneceu como entrada
ao comando chown, as partes individuais dos nomes, levando em consideração o espaço em
branco como delimitador do nome.
Para resolver este problema, precisamos informar ao comando xargs que o delimitador é outro:
find . -type d -print0 | xargs -0 chown -R queiroz
A opção -print0 termina os nomes dos arquivos com um zero, de forma que
os nomes de arquivos com espaços em branco sejam corretamente tratados. Da
mesma forma, no comando xargs o argumento -0 indica que o separador do
nome dos arquivos é o zero e não o espaço em branco.
O argumento -print é opcional. Versões antigas de sistemas Unix exigiam que
fosse especificado no comando find. As versões modernas de sistemas GNU/Linux
e FreeBSD não exigem sua especificação, a não ser em casos como acima, em
que atribuimos um valor diferente do padrão ao delimitador do nome de arquivos.
Veja a relação completa dos artigos de Rubens Queiroz de Almeida
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.
![]() Recomendar este artigo |
|
Redes - Guia Prático
Por Carlos. E. Morimoto
Hardware - o Guia Definitivo
Por Carlos. E. Morimoto
Kurumin 7 - Guia Prático
Por Carlos. E. Morimoto
Linux: Ferramentas Técnicas, 2ed
Por Carlos. E. Morimoto
Certificação Linux
Por Uira Ribeiro
Expressões Regulares: Uma Abordagem Divertida
Por Aurélio Marinho Jargas
Marley e Eu: a Vida e o Amor ao Lado do Pior Cão do Mundo
Por John Grogan
Marley e Eu: a Vida e o Amor ao Lado do Pior Cão do Mundo
Por John Grogan
Redes de Computadores
Por Andrew S. Tanembaum
O Segredo
Por Rhonda Byrne
Redes de Computadores e a Internet
Por James F. Kurose e Keith W. Ross
MySQL - Guia do Programador
Por André Milani
UML: Guia do Usuário
Por Grady Booch, James Rumbaugh e Ivar Jacobson
O Conhecimento em Rede
Por Carlos Nepomuceno e Marcos Cavalcanti
Java: Como Programar
Por Harvey M. Deitel e Paul J. Deitel
Casais Inteligentes Enriquecem Juntos
Por Gustavo Cerbasi
Redes de Computadores: Curso Completo
Por Gabriel Torres
Java: Como Programar
Por Harvey M. Deitel e Paul J. Deitel
Descobrindo o Linux: Entenda o Sistema Operacional GNU/Linux
Por Joao Eriberto Mota Filho
Use a Cabeça!: JSP & Servlets
Por Brian Bashan, Kathy Sierra, Bert Bates
Hardware PC: Guia de Aprendizagem Rápida
Por Carlos E. Morimoto
Utilizando UML e Padrões
Por CRAIG LARMAN
Deus, um delírio
Por Richard Dawkins
Einstein : Sua Vida, Seu Universo
Por Walter Isaacson