Ajuda Linux - Dia 738 - Comando stat
Índice:
- Usando o comando
stat - Exibindo informações sobre o sistema de arquivos
- Desreferência (Seguir) Symlinks
- Personalizando a saída
- Conclusão
stat
é um utilitário de linha de comando que exibe informações detalhadas sobre determinados arquivos ou sistemas de arquivos.
Este artigo explica como usar o comando
stat
.
Usando o comando
stat
A sintaxe para o comando
stat
é a seguinte:
stat… FILE…
stat
aceita um ou mais nomes de
FILE
entrada e inclui várias opções que controlam o comportamento e a saída do comando.
Vamos dar uma olhada no seguinte exemplo:
stat file.txt
A saída será mais ou menos assim:
File: file.txt Size: 4030 Blocks: 8 IO Block: 4096 regular file Device: 801h/2049d Inode: 13633379 Links: 1 Access: (0644/-rw-r--r--) Uid: (1000/ linuxize) Gid: (1000/ linuxize) Access: 2019-11-06 09:52:17.991979701 +0100 Modify: 2019-11-06 09:52:17.971979713 +0100 Change: 2019-11-06 09:52:17.971979713 +0100 Birth: -
Quando chamado sem nenhuma opção,
stat
exibe as seguintes informações do arquivo:
- Arquivo - O nome do arquivo.Tamanho - O tamanho do arquivo em bytes.Blocos - O número de blocos alocados que o arquivo utiliza.IO Bloco - O tamanho em bytes de cada bloco.Tipo de arquivo - (por exemplo, arquivo regular, diretório, link simbólico…) Dispositivo - Número do dispositivo em hexadecimal e decimal.Inode - Número do inode.Links - Número de links físicos. Acesso - Permissões de arquivo nos métodos numéricos e simbólicos.Uid - ID do usuário e nome do proprietário.Gid - Grupo ID e nome do owner.Context - O contexto de segurança do SELinux.Access - A última vez que o arquivo foi acessado.Modify - A última vez que o conteúdo do arquivo foi modificado.Change - A última vez que o atributo ou o conteúdo do arquivo foi alterado.Birth - Hora de criação do arquivo (não suportada no Linux).
Exibindo informações sobre o sistema de arquivos
Para obter informações sobre o sistema de arquivos em que o arquivo fornecido reside, em vez de informações sobre o próprio arquivo, use a opção
-f
, (
--file-system
):
stat -f file.txt
A saída do comando terá a seguinte aparência:
File: "package.json" ID: 8eb53097b4494d20 Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 61271111 Free: 25395668 Available: 22265851 Inodes: Total: 15630336 Free: 13979610
Quando
stat
é chamado com a opção
-f
, ele mostra as seguintes informações:
- Arquivo - O nome do arquivo.ID - ID do sistema de arquivos em hex.Namelen - Comprimento máximo dos nomes dos arquivos.Tamanho do bloco fundamental - O tamanho de cada bloco no sistema de arquivos.Blocos:
- Total - Número de blocos totais no sistema de arquivos.Free - Número de blocos livres no sistema de arquivos.Available - Número de blocos gratuitos disponíveis para usuários não raiz.
- Total - Número de inodes totais no sistema de arquivos.Free - Número de inodes livres no sistema de arquivos.
Desreferência (Seguir) Symlinks
Por padrão, o
stat
não segue links simbólicos. Se você executar o comando em um link simbólico, a saída incluirá informações sobre o link simbólico, não o arquivo para o qual ele aponta:
stat /etc/resolv.conf
File: /etc/resolv.conf ->../run/systemd/resolve/stub-resolv.conf Size: 39 Blocks: 0 IO Block: 4096 symbolic link Device: 801h/2049d Inode: 8126659 Links: 1 Access: (0777/lrwxrwxrwx) Uid: (0/ root) Gid: (0/ root) Access: 2019-11-06 21:12:26.875956073 +0100 Modify: 2018-07-24 11:11:48.128794519 +0200 Change: 2018-07-24 11:11:48.128794519 +0200 Birth: -
Para cancelar a referência (seguir) o link simbólico e exibir informações sobre o arquivo para o qual o link simbólico aponta, use a opção
-L
, (
--dereference
):
stat -L /etc/resolv.conf
File: /etc/resolv.conf Size: 715 Blocks: 8 IO Block: 4096 regular file Device: 17h/23d Inode: 989 Links: 1 Access: (0644/-rw-r--r--) Uid: (101/systemd-resolve) Gid: (103/systemd-resolve) Access: 2019-11-06 20:35:25.603689619 +0100 Modify: 2019-11-06 20:35:25.555689733 +0100 Change: 2019-11-06 20:35:25.555689733 +0100 Birth: -
Personalizando a saída
O comando
stat
possui duas opções que permitem personalizar a saída de acordo com suas necessidades:
-c
, (
--format="format"
) e
--printf="format"
.
A diferença entre essas duas opções é que, quando dois ou mais arquivos são usados como operantes
--format
adiciona automaticamente uma nova linha após a saída de cada operando. O
--printf
interpreta escapes de barra invertida.
Existem muitas diretivas de formato para arquivos e sistemas de arquivos que podem ser usados com
--format
e
--printf
.
Por exemplo, para exibir apenas o tipo de arquivo que você usaria:
stat --format="%F" /dev/null
character special file
Você pode combinar qualquer número de diretivas de formatação e, opcionalmente, usar separadores personalizados entre elas. O separador pode ser um único caractere ou uma string:
stat --format="%n, %F" /dev/null
/dev/null, character special file
Para interpretar caracteres especiais como nova linha ou guia, use a opção
--printf
:
stat --printf='Name: %n\nPermissions: %a\n' /etc
imprime uma nova linha:
Name: /etc Permissions: 755
O
stat
também pode exibir as informações em forma concisa. Este formato é útil para analisar por outros utilitários.
Chame o comando com a opção
-t
(
--terse
) para imprimir a saída na forma concisa:
stat -t /etc
/etc 12288 24 41ed 0 0 801 8126465 147 0 0 1573068933 1573068927 1573068927 0 4096
Para obter uma lista completa de todas as diretivas de formato para arquivos e sistemas de arquivos, digite
man stat
ou
stat --help
no seu terminal.
Conclusão
O comando
stat
imprime informações sobre determinados arquivos e sistemas de arquivos.
No Linux, existem vários outros comandos que podem exibir informações sobre determinados arquivos, sendo
ls
o mais usado, mas mostra apenas uma parte das informações fornecidas pelo comando
stat
.
A Dell busca expandir sua oferta no Linux Para expandir suas ofertas no Linux, a Dell está pesquisando novos dispositivos do tipo netbook e em breve oferecerá atualizações do sistema operacional Linux Em um esforço para expandir suas ofertas de Linux, a Dell está pesquisando novos dispositivos do tipo netbook e em breve oferecerá atualizações de netbooks para o Linux, disse uma autoridade da empresa na quarta-feira. A empresa está pesquisando a possibilidade de oferecer novos produtos Linux. bas
Smartbooks são dispositivos do tipo netbook que são alimentados por chips projetados pela Arm. Os dispositivos suportam principalmente o sistema operacional Linux e são projetados para aqueles que dependem da Web para a maior parte de sua computação. A Dell não pôde dizer se ofereceria um livro inteligente.
Aproveite a linha de comando com o comando Take
Integre o prompt de comando, a GUI e uma poderosa linguagem de lote com o potente kit de ferramentas Take Command. > Você não adora quando procura um programa que precisa para executar uma função, encontrá-la e depois descobrir que ela faz muito mais? Eu encontrei o Take Command ($ 100, 30 dias de teste gratuito) depois de ter sido frustrado com a linha de comando ruim no Windows. Eu descobri que isso me deu o que eu queria, e muitas coisas que eu não sabia que queria - mas agora eu definitivame
Comando Chmod no linux (permissões de arquivo)
No Linux, o acesso aos arquivos é gerenciado através das permissões, atributos e propriedade do arquivo. Este tutorial aborda como usar o comando chmod para alterar as permissões de acesso de arquivos e diretórios.







