Obtendo um comando para executar em todos os arquivos em subdiretórios

1

Desculpas para a questão do n00b. Eu instalei o Plex Media Server no Ubuntu 14.04 e ele parecia estar ignorando algumas pastas e arquivos. Uma pessoa muito prestativa nos fóruns do Plex sugeriu que eu precisava garantir que o Plex tivesse as permissões adequadas para ler e acessar os arquivos e compartilhar comigo os seguintes comandos:

cd /directory-containing-media 
sudo find . -type d -print -exec chmod 755 {} \;
sudo find . -type f -print -exec chmod 644 {} \;

Está funcionando bem, mas eu tenho um monte de subpastas / subdiretórios e é muito demorado rodar em cada pasta separada. Qual é a melhor maneira de executá-lo em todos os arquivos em todas as subpastas? Eu estou supondo que é para usar '-r', mas não tenho certeza onde colocá-lo ou se eu precisar de outras opções, etc.

    
por Nelson Muntz 27.07.2014 / 07:51

2 respostas

0

Os comandos: sudo find . -type d e sudo find . -type f encontram pastas e arquivos nesse diretório recursivamente .

$ whatis find
find (1)             - search for files in a directory hierarchy

Então, ele será executado recursivamente e encontrará resultados em todos os diretórios incluindo todos os subdiretórios , pois o mesmo funciona como recursivamente .

    
por Pandya 27.07.2014 / 10:58
0

Vai levar tempo, não há nada que você possa fazer.

Digite isto aviso primeiro vá para o diretório desejado depois digite este É perigoso Ou mude o (ponto) com o caminho do diretório desejado

sudo find . -type f -exec chmod 644 {} \; 2>/dev/null >/dev/null & . 

Seu problema de tempo será resolvido, o que tornará seu terminal livre para trabalhar enquanto seu comando estiver sendo executado no back-end.

    
por Dishank Jindal 27.07.2014 / 09:14