Comando da árvore de comandos do Linux

1. Introdução ao comando tree

  O comando tree é um comando usado para exibir a estrutura de diretórios. Ele pode exibir todos os arquivos e subdiretórios em um diretório especificado na forma de um diagrama de árvore. Este comando não é muito usado,mas ainda é muito útil quando contamos a estrutura de diretórios de um determinado diretório.Precisamos usá-lo se precisarmos copiar completamente a estrutura de diretórios de um determinado diretório,mas não somos responsáveis ​​pelo arquivos no diretório.Ordem.

2. Exemplo de uso do comando tree

1. Verifique a versão do comando

[root@s152 ~]# tree --version
tree v1.6.0 © 1996 - 2011 por Steve Baker, Thomas Moore, Francesc Rocher, Kyosuke Tokoro

2. Obtenha ajuda de comando

[root@s152 ~]#árvore --help

3. Veja a estrutura do diretório de teste do diretório

[root@s152 ~]#
teste de teste de árvore
├── nível1-1
│ ├── nível2-1
│ ├── nível2-2
│ └── nível2-3
├── nível1-2
│ ├── nível2-1
│ ├── nível2-2
│ └── nível2-3
└── nível1-3
├── nível2-1
├── nível2-2
└── nível2-3

12 diretórios, 0 arquivos

4. Exiba apenas o caminho completo do diretório

  Se precisarmos obter recursivamente toda a estrutura de diretórios sob o diretório, podemos usar o seguinte comando. -f significa imprimir o caminho completo; -d significa imprimir apenas o diretório, não o arquivo; -i significa omitir o anterior linha horizontal.

[root@s152 ~]# tree -fid teste
teste
teste/nível1-1
teste/nível1-1/nível2-1

teste/nível1-3/nível2-3

12 diretórios

5. Não imprima informações estatísticas

[root@s152 ~]# tree --noreport teste
teste
├── a.txt
├── nível1-1
│ ├── bb.txt
│ ├── nível2-1
│ ├── nível2-2
│ │ └─ ─ ccc.txt
│ └── nível2-3

6. Imprimir informações de inode

  O parâmetro inodes pode ser usado para imprimir o número de inodes de arquivos e diretórios. O número de inodes geralmente é usado para excluir arquivos quando o nome do arquivo exibe caracteres ilegíveis. Você pode usar o comando #find -inum inodes_number -delete para excluir arquivos ilegíveis.

[root@s152 ~]# tree --inodes test
test
├── [8576899] a.txt
├── [16851797] nível1-1
│ ├── [16878307] bb.txt
│ ├── [25166001] nível2- 1
│ ├── [303089] nível2-2
│ │ └── [323552] ccc.txt
│ └── [8422822] nível2-3

12 diretórios, 3 arquivos

7. Filtre diretórios vazios ao imprimir

[root@s152 ~]# tree --prune teste
Insira a descrição da imagem aqui

8. Imprima atributos de arquivo, proprietário e grupo ao imprimir e exibir

Insira a descrição da imagem aqui

9. Imprima primeiro o diretório e depois os arquivos.

[root@s152 ~]# tree --dirsfirst test
test
├── nível1-1
│ ├── nível2-1
│ ├── nível2-2
│ │ └── ccc.txt
│ ├── nível2-3
│ └ ── bb.txt
├── nível1-2

12 diretórios, 3 arquivos

3. Sintaxe de uso e descrições de parâmetros comuns

1. Use gramática

#tree [opções] [diretório]
#tree [opções] [diretório] -o nome do arquivo

2. Exibir descrição do parâmetro

  na tabela a seguir

parâmetro Descrição do parâmetro
-a Liste todos os arquivos.
-d Apenas diretórios são listados.
-eu Siga links simbólicos como diretórios.
-f Imprima o prefixo do caminho completo de cada arquivo.
-x Apenas permaneça no sistema de arquivos atual.
-Nível L Apenas diretórios de nível inferior profundos.
-R Execute novamente a árvore quando o nível máximo de diretório for atingido.
-Padrão P Liste apenas os arquivos que correspondem ao padrão fornecido.
-Eu padrão Não liste arquivos que correspondam ao padrão fornecido.
--noreport Desative a contagem de arquivos/diretórios no final da lista em árvore.
--charset X Use charset X para terminal/HTML e saída de linha recuada.
--filelimit# Não tenha mais de # arquivos no diretório.
--timefmt Imprima e formate a hora de acordo com o formato <f>.
-o nome do arquivo Saída para arquivo em vez de stdout.
--de Imprimir tamanho do diretório.
--ameixa seca Remova diretórios vazios da saída.

3. Descrição dos parâmetros do arquivo

parâmetro Descrição do parâmetro
-q Imprima caracteres não imprimíveis como "?"
-N Imprima caracteres não imprimíveis como estão.
-Q Cite o nome do arquivo entre aspas duplas.
-p Proteção de impressão para cada arquivo.
-você Exibe o proprietário do arquivo ou o número UID.
-g Exibe o proprietário do grupo de arquivos ou o número GID.
-s Imprima o tamanho de cada arquivo em bytes.
-h Imprima as dimensões de uma forma que seja mais fácil de ler.
--e Como -h, mas usa unidades SI (potências de 1000).
-D Imprima a data da última modificação ou (-c) mudança de status.
-F Anexar "/", "=", "*", "@", "
--inodes Imprima o número do inode de cada arquivo.
--dispositivo Imprima o número de ID do dispositivo ao qual cada arquivo pertence.

4. Descrição do parâmetro de classificação

parâmetro Descrição do parâmetro
-v Classifique os arquivos alfanumericamente por versão.
-r Classifique os arquivos em ordem alfanumérica inversa.
-t Classifique os arquivos pela hora da última modificação.
-c Classifique os arquivos pela hora da última mudança de status.
-VOCÊ Deixe o arquivo sem classificação.
--dirsfirst Lista os diretórios antes dos arquivos (-U desativa).

5. Descrição dos parâmetros das opções gráficas

parâmetro Descrição do parâmetro
-eu Não imprima linhas de recuo.
-A Imprima linhas recuadas de gráficos de linha ANSI.
-S Imprima usando linhas de recuo gráfico ASCII.
-n Sempre desligue a coloração (substituição -C).
-C O sombreamento está sempre ativado.

6. Descrição do parâmetro da opção XML/HTML

parâmetro Descrição do parâmetro
-X Imprima uma representação XML da árvore.
-HbaseHREF Imprima o formato HTML com baseHREF como diretório principal.
-Corda T Substitua o título HTML padrão e o título H1 por strings.
--nolinks Desative hiperlinks na saída HTML.

4. Prática de copiar a estrutura de diretórios com base no comando tree

  Suponha que um sistema tenha concluído os testes de integração e precise ser implantado on-line no ambiente de produção. O sistema possui um grande diretório para armazenamento de arquivos, que contém vários subdiretórios, uma grande quantidade de dados foi gerada durante o teste e o volume total de dados ultrapassou 5 G. A implantação do ambiente de produção precisa apenas da estrutura de diretórios dos arquivos armazenados e não dos arquivos de teste armazenados nele. O que devo fazer neste momento? Aqui apresentaremos o uso do comando tree para escrever scripts para atender a esse requisito.

  • Ver o tamanho desta pasta

[dados root@s152]# du -sh *
Insira a descrição da imagem aqui

  • Copiar estrutura de diretório para documento de texto

[dados root@s152]# tree -fid --noreport datafiles -o datafiles.txt

  • Copie o documento de texto para o caminho do diretório a ser armazenado no servidor de produção

[root@s152 data]# scp datafiles.txt 192.168.0.152:/tmp/
#Este é apenas um teste de simulação. Basta alterar o endereço IP para o host e diretório para o qual você realmente precisa copiar.

  • Crie um diretório usando o comando mkdir -p

[root@s152 tmp]# mkdir -pcat datafiles.txt
Insira a descrição da imagem aqui

  • Compare o número de diretórios

[root@s152 tmp]# tree /tmp/datafiles |diretórios grep
235 diretórios, 0 arquivos
[root@s152 tmp]# tree /data/datafiles |diretórios grep
235 diretórios, 3138 arquivos
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/carefree2005/article/details/132205901
Recomendado
Clasificación