[Enciclopédia de explicação de comandos do Linux] Comando 058.comm: compare e analise diferenças de linha de arquivos classificados

comunicação

Compare dois arquivos classificados linha por linha.

visão geral

comm [OPTION]... FILE1 FILE2

O propósito principal

Compare dois arquivos classificados linha por linha. Quando FILE1 ou FILE2 for -, leia a entrada padrão. Quando não houver opção, produza três colunas: a primeira coluna é a linha exclusiva de ARQUIVO1, a segunda coluna é a linha exclusiva de ARQUIVO2 e a terceira coluna é a linha comum de ARQUIVO1 e ARQUIVO2.

opções

  • -1A primeira coluna não é gerada.
  • -2A segunda coluna não é gerada.
  • -3A terceira coluna não é gerada.
  • --check-orderVerifica se as linhas de entrada estão classificadas corretamente, mesmo que estejam realmente classificadas.
  • --nocheck-orderNão verifica se as linhas de entrada estão na ordem correta.
  • --output-delimiter=STRUse STR como separador entre colunas de saída em vez do TAB padrão.
  • --totalAdiciona resumo adicional de saída da quarta coluna.
  • -z, --zero-terminatedDefina o terminador de linha como NUL (nulo) em vez de nova linha.
  • --helpExiba uma mensagem de ajuda e saia.
  • --versionExibir informações da versão e sair.

valor de retorno

Retornar 0 indica sucesso, retornar um valor diferente de zero indica falha.

exemplo

Conteúdo do texto aaa.txt:

[root@localhost text]# cat aaa.txt 
aaa
bbb
ccc
ddd
eee
111
222

Conteúdo do texto bbb.txt:

[root@localhost text]# cat bbb.txt 
bbb
ccc
aaa
hhh
ttt
jjj

Comparando resultados:

[root@localhost text]# comm --nocheck-order aaa.txt bbb.txt 
aaa
                bbb
                ccc
        aaa
ddd
eee
111
222
        hhh
        ttt
        jjj

A primeira coluna da saída contém apenas as linhas que ocorrem em aaa.txt, a segunda coluna contém as linhas que ocorrem em bbb.txt e a terceira coluna contém as mesmas linhas em aaa.txt e bbb.txt. Cada coluna é separada por um caractere de tabulação (\t).

comparar documentos classificados

Primeiro sortclassifique o conteúdo do arquivo por:

[root@localhost ~]# sort aaa.txt > aaa1.txt
[root@localhost ~]# sort bbb.txt > bbb1.txt

Comparando resultados:

[root@localhost ~]# comm aaa1.txt bbb1.txt
111
222
		aaa
		bbb
		ccc
ddd
eee
	hhh
	jjj
	ttt

interseção

Para imprimir a interseção de dois arquivos, a primeira e a segunda colunas precisam ser removidas:

[root@localhost text]# comm aaa.txt bbb.txt -1 -2
bbb
ccc

conjunto de diferenças

Ao excluir colunas desnecessárias, você pode obter a diferença entre aaa.txt e bbb.txt:

A diferença de aaa.txt:

[root@localhost text]# comm aaa.txt bbb.txt -2 -3
aaa
ddd
eee
111
222

A diferença do bbb.txt:

[root@localhost text]# comm aaa.txt bbb.txt -1 -3
aaa
hhh
ttt
jjj

Perceber

Este comando é um comando do pacote GNU coreutils. Para obter informações de ajuda relacionadas, consulte man -s 1 comm.info coreutils 'comm invocation'

Aprenda do zeropython

[Aprenda python do zero] 92. Use a biblioteca de solicitações do Python para enviar solicitações HTTP e processar respostas
[Aprenda python do zero] 91. Use decoradores e dicionários para gerenciar aplicativos da web simples para caminhos de solicitação
[Aprenda python do zero] 93. Use gerenciamento de dicionário Caminho de solicitação
[Aprenda python do zero] 89. Use WSGI para construir um servidor web simples e eficiente
[Aprenda python do zero] 88. Explicação detalhada da interface WSGI: realize um desenvolvimento web simples e eficiente
[Aprenda python do zero] 87. Construa manualmente Servidor HTTP Implementação Python e processamento simultâneo multithread
[aprendendo python do zero] 86. Compreensão aprofundada do protocolo HTTP e seu papel na comunicação entre navegador e servidor
[aprendendo python do zero] 85. Aplicação de tecnologia de computação paralela do pool de processos Python
[ aprendendo python do zero] 84. Compreensão aprofundada de threads e processos
[aprendendo python do zero] 83. Programação multiprocessos em Python e o uso de pools de processos
[aprendendo python do zero] 82. Realização de programas de bate-papo baseados em multi- threading
[aprendendo python do zero] 81. Python e mais Aplicação de comunicação e fila de threads
[aprendendo python do zero] 80. Acesso de thread a variáveis ​​​​globais e problemas de segurança de thread
[aprendendo python do zero] 79. Acesso de thread a variáveis ​​​​globais e threads questões de segurança
[aprendendo python do zero] 78. Casos de download de arquivos
[aprendendo python do zero] 77. Programação e precauções do servidor TCP
[aprendendo python do zero] 76. Servidor e cliente: componentes-chave da comunicação de rede
[aprendendo python do zero] 75 . Protocolo TCP: protocolo de comunicação confiável da camada de transmissão orientada à conexão
[Aprenda python do zero] 74. Programa de rede UDP: explicação detalhada de problemas de porta e informações de ligação
[Aprenda python do zero] 73. Programa de rede UDP - envie dados
[Aprenda python do zero] 72. Compreensão profunda da comunicação de soquete e criação de soquete O método de
[aprender python do zero] 71. Portas de rede e suas funções
[aprender python do zero] 70. Métodos de comunicação de rede e suas aplicações: da comunicação direta a roteadores para conectar múltiplas redes
[aprender python do zero] 69. Comunicação de rede e análise de classificação de endereço IP
[aprendendo python do zero] 68. Modos gananciosos e não gananciosos em expressões regulares Python
[aprendendo python do zero] 67. módulo re em Python: substituição regular e tecnologia de correspondência avançada
[aprendendo python do zero] 66. Compreensão aprofundada de expressões regulares: uma ferramenta poderosa para correspondência de padrões e processamento de texto
[Aprenda python do zero] 65. Explicação detalhada dos modificadores de expressões regulares do Python e suas aplicações
[Aprenda python do zero] 64. O método re.compile em expressões regulares Python Explicação detalhada
[aprendendo python do zero] 63. Introdução à classe re.Match em expressões regulares e seus atributos e métodos
[aprendendo python do zero] 62. Expressões regulares do Python: uma poderosa ferramenta de correspondência de strings
[aprendendo python do zero] 61. Explicação detalhada e exemplos de aplicação de atributos de propriedade em Python
[aprendendo python do zero] 60. Gerador de exploração: uma ferramenta flexível para iteração
[aprendendo python do zero] 59. Iterador: uma ferramenta eficiente para otimizar a travessia de dados
[aprendendo python de zero] 58. Exceções personalizadas em Python e métodos para gerar exceções
[Aprenda python do zero] 57. Use a palavra-chave with em Python para fechar recursos corretamente
[Aprenda python do zero] 56. A importância e aplicação do tratamento de exceções na programação
[Aprenda python do zero] 55. Serialização e processamento em Python Desserialização, aplicação de módulos JSON e pickle
[Aprenda python do zero] 54. Gravar dados na memória
[Aprenda python do zero] 53. Arquivo CSV e módulo Python CSV
[Aprenda python do zero] 52. Ler e gravar arquivos - Guia de operação de arquivo Python
[ aprendendo python do zero] 51. Abertura e fechamento de arquivos e sua aplicação em Python
[aprendendo python do zero] 49. Funções integradas relacionadas a objetos em Python e seu uso
[aprendendo python do zero] 48. Explicação detalhada de herança e herança múltipla em Python
[aprendendo python do zero] 47. O conceito e uso básico de herança na programação orientada a objetos
[aprendendo python do zero] 46. Análise de métodos __new__ e __init__ e singleton em padrões de design Python
[aprendendo python do zero] 45 Métodos de classe e métodos estáticos em Python
[aprendendo python do zero] 44. Atributos e métodos privados em programação orientada a objetos
[aprendendo python do zero] 43. Exemplos em programação orientada a objetos Python Atributos e atributos de classe
[Aprenda python do zero] 42. Atributos e métodos integrados em Python
[Aprenda python do zero] 41. Método mágico Python (2)
[Aprenda python do zero] 40. Método mágico Python (1)
[Aprenda python do zero] 39. Gramática básica orientada a objetos e exemplos de aplicação
[Aprenda python do zero] 38. Uso e importação de pacotes Python
[Aprenda python do zero] 37. Uso e precauções dos módulos personalizados do Python
[Do zero Aprendendo python ] 36. Métodos e técnicas para usar pip em Python para gerenciamento de pacotes de terceiros
[aprendendo python do zero] 35. Módulos comuns do sistema Python e seu uso
[aprendendo python do zero] 34. Explicação detalhada da importação e uso de módulos Python
[Aprenda python do zero] 33. O papel dos decoradores (2)
[Aprenda python do zero] 32. O papel dos decoradores (1)
[Aprenda python do zero] 31. Compreensão aprofundada de funções e fechamentos de ordem superior em Python
[do Zero aprendendo python] 30. Compreensão aprofundada de funções recursivas e funções anônimas
[aprendendo python do zero] 29. "Explicação detalhada dos parâmetros de função" - entenda os diferentes usos dos parâmetros de função Python
[aprendendo python do zero] 28 Variáveis ​​locais e globais em Python Variáveis
​​[Aprenda python do zero] 27. Uso e chamadas aninhadas de funções Python
[Aprenda python do zero] 25. Funções: uma ferramenta para melhorar a eficiência da escrita de código
[Aprenda python do zero] 24. Operações com strings e métodos de travessia em Python
[Aprenda python do zero] 23. Como usar e operações comuns de conjuntos (set) em Python
[Aprenda python do zero] 22. Adição, exclusão, modificação e consulta de dicionários em Python e variáveis ​​de dicionários
[ Aprenda python do zero] 21. Em tuplas e dicionários Python para
[Aprenda python do zero] 20. Habilidades e exemplos de operação de lista em Python
[Aprenda python do zero] 19. Aplicação de loop através de listas e aninhamento de lista
[Aprenda python do zero] 18. Explicação detalhada das operações básicas de listas Python (1)
[ Do Zero aprendendo python] 17. Método de formato de string Python (2)
[Aprenda python do zero] 16. Método de formato de string Python (1)
[Aprenda python do zero] 15. Compreensão aprofundada da codificação de strings e conjuntos de caracteres
[ do zero aprendendo python] 14. Operações comuns de strings Python (2)
[Aprenda python do zero] 13. Operações comuns de strings Python (1)
[Aprenda python do zero] 12. Operações e aplicações de strings Python
[Aprenda python do zero] 11. Instrução de loop Python e fluxo de controle
[aprender python do zero] 10. Explicação detalhada da instrução condicional do Python e se aninhamento
[aprender python do zero] 09. Declaração de julgamento condicional em Python
[aprender python do zero] 08. Python entende operações de bits Operadores, prioridade do operador
[aprender python do zero] 07. Explicação detalhada dos operadores Python: atribuição, comparação e operadores lógicos
[aprender python do zero] 06. Use operadores aritméticos em Python para cálculo e concatenação de strings
[aprender do zero python] 05. Saída e entrada em Python
[aprender python do zero] 04. Noções básicas de programação Python: variáveis, tipos de dados e identificadores
[aprender python do zero] 03. Programação interativa em Python e anotações detalhadas
[Aprenda python do zero] 02. Introdução às ferramentas de desenvolvimento
[Aprenda python do zero] 01. Instale e configure python

おすすめ

転載: blog.csdn.net/qq_33681891/article/details/132684585