De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 07 de outubro de 2013
Digamos que queiramos comparar os softwares instalados em dois servidores
CentOS/Fedora/RedHat. O natural é fazer o login em cada um dos servidores,
gerar a lista de softwares instalados e em seguida rodar um diff
para
ver as diferenças:
$ ssh servidor1 $ rpm -qa > servidor1.txt $ ssh servidor 2 $ rpm -qa > servidor2.txt $ scp servidor1:servidor1.txt . $ diff servidor1.txt servidor2.txt
Mas dá para fazer tudo isto de uma tacada só:
$ diff <(ssh servidor1 'rpm -qa | sort') <(ssh servidor2 'rpm -qa | sort')
Neste exemplo a entrada para o comando diff
é recebida por meio do comando
invocado usando <( )
. O comando a ser executado deve ser colocado dentro
dos parenteses, como acima.
É claro que isto só funcionaria se você tivesse configurado os dois servidores para permitir o acesso sem senhas.
IMPORTANTE: Não existe um espaço entre o caractere <
e o
parentese. Caso haja um espaço em branco o comando retornará um erro.
Outro exemplo, para comparar o conteúdo de dois diretórios, para ver quais arquivos estão em um e no no outro.
diff <(ls $primeiro_diretorio) <(ls $segundo_diretorio)
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários