colunas em arquivos e variáveis - manipular colunas.

Atualizado em: 23/07/2006



Sobre este documento

Manipular colunas em variáveis e arquivos. Exemplos em linhas de comando e scripts.

dicas

Cuidado com o formato do arquivo, conforme o aplicativo pode alterar todaas as linhas do arquivo, pode modificar indevidamente cabeçalhos e rodapé, verifique se pode aplicar em todo arquivo, quando nem todas as linhas são iguais pode retornar resultado inesperado.

Procure editar o arquivo para salvar em outro arquivo as linhas que não devem serem alteradas, tais como cabeçalhos, rodapé e outras partes do arquivo.

colrm remover colunas

Veja sobre colrm, copia parcial do manual do CL10 man colrm

  NOME
         colrm - remove colunas de um arquivo
  
  SINOPSE
         colrm [início fim]
  
  DESCRIÇÃO
         Colrm  remove colunas selecionadas de um arquivo. A entrada é tomada da
         entrada padrão.  A saída é enviada para a saída padrão.
  
         Se chamado com um parâmetro as colunas de cada linha  serão  removidas,
         iniciando-se com a coluna especificada.  Se chamado com dois parâmetros
         as colunas da primeira coluna até a última serão removidas.
  
         A numeração das colunas inicia-se com a coluna 1.

cat arquivo.txt | colrm 4

cat arquivo.txt | colrm 3 5

cat arquivo.txt | colrm 4 > arqsemcol.txt

cat manipulando colunas

Dependendo do delimitador, pode se usar o cat para copiar colunas para outro arquivo, algo no formato.

cat arquivo.txt | cut -d";" -f1,2,5,7

Substitua o delimitador em -d";" e selecione as colunas em -f1,2,5,7

Redirecione o resultado para outro arquivo

cat arquivo.txt | cut -d";" -f1,2,5,7 > arqcolunas.txt

awk

awk é excelente para trabalhar com colunas, faça testes com este exemplo.

awk -F';' '{print $1,$2}' arquivo.txt

-F';' é o delimitador

$1,$2 são as colunas que deseja selecionar.

Indicações

Página principal sobre script em geral (FAQ)
http://www.zago.eti.br/script/A-menu-scripts.html

Página principal deste site (FAQ)
http://www.zago.eti.br/menu.html