Diferença entre colunas

Publicado por DAVISON MARCEL PASQUALINI (última atualização em 25/06/2011)

[ Hits: 5.058 ]

Download xdiff.sh




Um script criado para ajudar um colega VOL que precisava comparar a pimeira coluna com outra coluna de um arquivo. Como dei uma caprichada, resolvi publicar, quem sabe ajuda outros.

  



Esconder código-fonte

#!/bin/bash
# xdiff
# --------------------------------------
# Script Viva o Linux
# --------------------------------------
#                                 fdmarp

help ()
{
clear
echo "
User Commands                                           xdiff(1)

`tput bold`NAME`tput sgr0`
     xdiff - compara colunas de arquivo

`tput bold`SYNOPSIS`tput sgr0`
     xdiff  [arquivo_1][arquivo_2] [numero_da_coluna1] [numero_da_coluna2] 


`tput bold`DESCRIPTION`tput sgr0`
     Compara determinada coluna de um arquivo com uma coluna de outro 
     arquivo. 
     Caso nao seja definida a coluna do segundo arquivo, sera assumida a
     mesma do arquivo_1.

`tput bold`OPTIONS`tput sgr0`
     The following options are supported:

     arquivo_1    -  nome do primeiro arquivo.

     arquivo_2    -  nome do segundo arquivo.

     coluna_1     -  numero da coluna no arquivo_1.
 
     coluna_2     -  OPICIONAL - numero da coluna no arquivo_2.


     Examples:
       xdiff Arq1.txt Arq2.txt 1 2
       xdiff Arq1.txt Arq2.txt 2

`tput bold`VERSION`tput sgr0`
       Version is 1.01

"
exit 0

}

COLUNA1=$3
COLUNA2=$4
arq1=$1
arq2=$2

if [ "$4" = "" ]; then
COLUNA2=$COLUNA1
fi


case "$COLUNA1" in
[0-99] )

awk "{ print \$$COLUNA1 }" $arq1 | while read line_arq1
do
COUNT=`expr $COUNT + 1`
line_arq2=`awk "NR==$COUNT{ print \$ $COLUNA2 }" $arq2`
if [ "$line_arq1" != "$line_arq2" ]; then
echo "xdiff -> $line_arq1 $line_arq2"
fi
done

;;

* )
help
;;
esac


Scripts recomendados

Instalador de pacotes para Sabayon Linux

Theme para fluxbox

Monitoramento automático de logs e envio por e-mail – Fácil e explicado

Nmap para iniciantes

Menu + Relógio em tempo real


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts