Informações completas sobre os arquivos numa pasta
Dica publicada em Shell Script / Expressões Regulares
Informações completas sobre os arquivos numa pasta
Eu acho o comando abaixo muito interessante e útil, por isso, resolvi fazer esta dica.
O comando não é meu. A autoria original do script é atribuída ao Alemão Miku, do site Stackoverflow, e bem divulgada pelo Inglês Jon Winstanley:
Com esse pequeno comando, script que inclui Expressões Regulares, é possível ver informações completas sobre todos os arquivos de um diretório, pasta, inclusive as permissões, é muito cômodo o seu uso:
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
Tenho um artigo publicado contendo detalhes deste e de outros comandos pouco comuns, pouco usuais:
Já dentro do diretório, copie e cole (ou digite) o pequeno script e execute:
cd /
cd <CAMINHO (PATH) E DIRETÓRIO ONDE ESTÃO OS ARQUIVOS>
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
Obs. : se quiser ver também os subdiretórios, coloque um "a" antes do "l" (ls -al).
Se desejar, crie um "alias", atalho, link simbólico e o coloque no seu arquivo ~/.bashrc. Exemplo:
cd /
cd etc
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
O comando não é meu. A autoria original do script é atribuída ao Alemão Miku, do site Stackoverflow, e bem divulgada pelo Inglês Jon Winstanley:
- User miku - Stack Overflow
- Can the Unix list command 'ls' output numerical chmod permissions? - Stack Overflow
- User Jon Winstanley - Stack Overflow
Com esse pequeno comando, script que inclui Expressões Regulares, é possível ver informações completas sobre todos os arquivos de um diretório, pasta, inclusive as permissões, é muito cômodo o seu uso:
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
Tenho um artigo publicado contendo detalhes deste e de outros comandos pouco comuns, pouco usuais:
Para Usar
Vá para o diretório onde estão os arquivos cujas informações, detalhes, deseja visualizar (você pode não entrar no diretório, e sim usar o caminho completo, mas eu acho mais prático assim, principalmente se você for editar algum arquivo, em seguida).Já dentro do diretório, copie e cole (ou digite) o pequeno script e execute:
cd /
cd <CAMINHO (PATH) E DIRETÓRIO ONDE ESTÃO OS ARQUIVOS>
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
Obs. : se quiser ver também os subdiretórios, coloque um "a" antes do "l" (ls -al).
Se desejar, crie um "alias", atalho, link simbólico e o coloque no seu arquivo ~/.bashrc. Exemplo:
alias infosarquivo="ls -al | awk '{k=0;for(i=0;i<=8;i++)k+=((substr(\$1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf(\"%0o \",k);print}'"
Exemplo de Uso
Veja as informações, inclusive as permissões, de alguns do arquivos do meu diretório /etc:cd /
cd etc
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
755 drwxr-xr-x 2 root root 48 Jul 14 2010 a2ps 755 drwxr-xr-x 4 root root 128 Ago 28 2014 acpi 644 -rw-r--r-- 1 root root 49 Nov 9 2013 adjtime 755 drwxr-xr-x 2 root root 72 Mar 19 00:20 adobe 755 drwxr-xr-x 2 root root 48 Jul 14 2010 aimsniff 755 drwxr-xr-x 2 root root 72 Mar 18 22:58 alternatives 755 drwxr-xr-x 4 root root 160 Mar 19 00:20 apache2 755 drwxr-xr-x 7 root root 184 Jul 25 2010 apm 755 drwxr-xr-x 2 root root 88 Abr 30 2013 apparmor.d 644 -rw-r--r-- 1 root root 7415 Jul 25 2010 asound.state 644 -rw-r--r-- 1 root root 186 Fev 10 2013 atmsigd.conf 755 drwxr-xr-x 2 root root 88 Jan 9 16:49 at-spi2 755 drwxr-xr-x 2 root root 232 Jun 22 2014 autofs 755 drwxr-xr-x 2 root root 128 Jul 31 2010 autopackage 755 drwxr-xr-x 3 root root 216 Jun 11 2014 avahi 644 -rw-r--r-- 1 root root 3770 Dez 18 2012 axelrc 755 drwxr-xr-x 3 root root 128 Abr 10 17:19 bash 755 drwxr-xr-x 2 root root 184 Mar 18 23:04 bash_completion.d 755 drwxr-xr-x 4 root root 112 Jul 25 2010 beagle 755 drwxr-xr-x 2 root root 88 Mar 19 14:22 binfmt.d 644 -rw-r--r-- 1 root root 1427 Mar 24 2012 blkid.tab 644 -rw-r--r-- 1 root root 1427 Mar 24 2012 blkid.tab.old 755 drwxr-xr-x 2 root root 208 Jan 9 17:43 bluetooth 755 drwxr-xr-x 2 root root 96 Nov 29 22:09 bonobo-activation 755 drwxr-xr-x 2 root root 9872 Out 26 17:56 brltty 644 -rw-r--r-- 1 root root 22598 Out 22 06:52 brltty.conf ..............>>>>