encontrar executáveis

2

O seguinte comando funciona no Ubuntu (GNU findutils 4.4.2) mas não no Fedora (4.2.27)

time find . -maxdepth 1 -type f -executable -print

Como posso encontrar arquivos executáveis usando uma versão antiga do find?

    
por shantanuo 19.04.2012 / 11:31

4 respostas

6
find . -maxdepth 1 -type f -perm /a+x

Do homem:

-perm /mode

Any of the permission bits mode are set for the file. Symbolic modes are accepted in this form. You must specify ’u’, ’g’ or ’o’ if you use a symbolic mode. See the EXAMPLES section for some illustrative examples. If no permission bits in mode are set, this test currently matches no files. However, it will soon be changed to match any file (the idea is to be more consistent with the behaviour of perm -000).

A seção EXAMPLES tem algo em que o find mostra todos os arquivos graváveis. Um find em arquivos executáveis será semelhante ao exemplo dado.

    
por 19.04.2012 / 11:40
3
find . -type f -perm -111

Nota: -111 não 111

    
por 19.04.2012 / 11:38
1
find . | file -f - | grep executable

pode ser muito mais lento, mas também procurará coisas que são executáveis, mas não necessariamente autorizadas como tal. Você pode precisar alterar o que você deseja para melhorar a precisão (isso também corresponderia a um arquivo chamado "executable.jpg") resultados estreitos (você pode estar procurando apenas por um determinado tipo de exe) e talvez queira aperfeiçoar a saída posteriormente .

Realmente seria útil saber porque você está fazendo isso para construir a melhor resposta:)

    
por 19.04.2012 / 11:51
0
time find . -maxdepth 1 -type f -perm /a=x -print
    
por 19.04.2012 / 11:42

Tags