Como exibir arquivos recursivamente corretamente (incluindo diretórios ocultos)


8

Esse enigma é causado pela execução git pulldo root.

Existem várias razões para eu fazer isso ... Quero que meu dispositivo atualize o código ao inicializar e rc.localseja executado pela raiz.

Tudo funciona muito bem ( npm installtende a falhar quando executado pelo root, mas esse é um tópico totalmente diferente), o problema surge quando tento usar o repositório git com um usuário não root posteriormente ... alguns dos arquivos git têm foi escrito pela raiz, então agora não posso mais usá-lo (permissão negada).

Então, eu gostaria de recursivamente chown, mas não parece haver nada que realmente funcione em todos os pequenos arquivos git. Eu tentei a -Rbandeira e o ./**/*caminho.

Meu palpite é que nenhuma dessas técnicas entra em diretórios de ponto.


1
Qual shell você está usando? Em bashvocê precisa definir shopt -s dotglobpara corresponder arquivos ocultos por *ou **.
jimmij

1
@jimmij bom saber, graças (provavelmente você pode colocar isso como uma resposta)
Steven Lu

Você chown -R *, em vez de chown -R .?
Peter Cordes

Respostas:


16

O comando a seguir funciona para mim no Ubuntu. Ele mudou toda a propriedade de arquivos e diretórios de forma recusativa

sudo chown -R someuser:somegroup YourDir

Eu tentei sudo chown -R me:me .e quando ls -altodos os meus arquivos ainda pertencem à raiz. Por que isso não funciona?
Richard

@ Richard você tentou usar um caminho absoluto ou ./?
Vdegenne #

0

Eu uso em treevez disso:

 sudo tree -fai ~/.blabla  | xargs -L1 -I{} sudo chown youruser:youruser {}

Também tome cuidado para não executar chown recursivo ou chmod no diretório '/' ou em outro diretório do sistema.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.