Diferença entre colunas
Publicado por DAVISON MARCEL PASQUALINI (última atualização em 25/06/2011)
[ Hits: 6.304 ]
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.
#!/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
System Software 2.0 - Instale e remova repositórios e programas de forma simples
Nenhum comentário foi encontrado.
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









