[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Dividir arquivo em 02 colunas iguais
From: |
nerobarrabas |
Subject: |
Dividir arquivo em 02 colunas iguais |
Date: |
Thu, 08 Nov 2012 22:35:04 -0000 |
User-agent: |
eGroups-EW/0.82 |
Mestres,
Tenho o seguinte arquivo:
[0;37;40m<K>
--------------------------------------------------------------------
<K> |------------------- Khomp Errors Counters on Links -----------------|
<K> |--------------------------------------------------------------------|
<K> |----- Link '0' on board '0' -----||----- Link '1' on board '0' -----|
<K> |---------------------------------||---------------------------------|
<K> | Error type | Number || Error type | Number |
<K> |---------------------------------||---------------------------------|
<K> | Changes to lock | 6 || Changes to lock | 10 |
<K> | Lost of signal | 22 || Lost of signal | 53 |
<K> | Alarm notification | 0 || Alarm notification | 0 |
<K> | Lost of frame | 8 || Lost of frame | 46 |
<K> | Lost of multiframe | 13 || Lost of multiframe | 55 |
<K> | Remote alarm | 3 || Remote alarm | 16 |
<K> | Slip alarm | 1 || Slip alarm | 616 |
<K> | PRBS | 0 || PRBS | 0 |
<K> | Wrong bits | 0 || Wrong bits | 0 |
<K> | Jitter variation | 0 || Jitter variation | 0 |
<K> | Frames without sync | 0 || Frames without sync | 0 |
<K> | Multiframe Signal | 0 || Multiframe Signal | 0 |
<K> | Frame error | 39 || Frame error | 112 |
<K> | Bipolar violation | 78 || Bipolar violation | 18616 |
<K> | CRC4 error | 0 || CRC4 error | 0 |
<K> --------------------------------------------------------------------
[0m
A primeira linha tem esses caracteres estranhos [0;37;40m<K> e a última esses
[0m
Preciso pegar os valores centrais das duas colunas e mandar para 02 arquivos,
deixando texto puro.
Consegui fazer e ficou assim:
#Arquivo1:
Changes to lock 6
Lost of signal 22
Alarm notification 0
Lost of frame 8
Lost of multiframe 13
Remote alarm 3
Slip alarm 1
PRBS 0
Wrong bits 0
Jitter variation 0
Frames without sync 0
Multiframe Signal 0
Frame error 39
Bipolar violation 78
CRC4 error 0
#Arquivo 2:
Changes to lock 10
Lost of signal 53
Alarm notification 0
Lost of frame 46
Lost of multiframe 55
Remote alarm 16
Slip alarm 616
PRBS 0
Wrong bits 0
Jitter variation 0
Frames without sync 0
Multiframe Signal 0
Frame error 112
Bipolar violation 18616
CRC4 error 0
Fiz o seguinte script, mas acho que poderia ser melhorado. Vejam:
#!/bin/bash
comando=$(/usr/sbin/comando | sed 's/<K>//')
var1=$(printf "$comando" | sed 's/||/\#/' | cut -d"#" -f1)
var1=$(printf "$var1" | sed 's/-//g')
var1=$(printf "$var1" | sed '$d')
var1=$(printf "$var1" | sed 's/|//g')
var1=$(printf "$var1" | sed 's/Khomp Errors Counters on Links//g')
var1=$(printf "$var1" | sed 's/Error type Number//g')
var1=$(printf "$var1" | sed 's/^ \+//')
var1=$(printf "$var1" | sed 's/^ \+//')
var1=$(printf "$var1" | awk 'NF>0')
var1=$(printf "$var1" | sed '1,2d')
printf "$var1" > arquivo1.txt
var2=$(printf "$comando" | sed 's/||/\#/' | cut -d"#" -f2)
var2=$(printf "$var2" | sed 's/-//g')
var2=$(printf "$var2" | sed '$d')
var2=$(printf "$var2" | sed 's/|//g')
var2=$(printf "$var2" | sed 's/Khomp Errors Counters on Links//g')
var2=$(printf "$var2" | sed 's/Error type Number//g')
var2=$(printf "$var2" | sed 's/^ \+//')
var2=$(printf "$var2" | sed 's/^ \+//')
var2=$(printf "$var2" | awk 'NF>0')
var2=$(printf "$var2" | sed '1,2d')
printf "$var2" > arquivo2.txt
Alguém poderia analisar e tentar sintetizar esse script? Resumindo/substituindo
comandos?
Prá deixar ele mais funcional e eficaz?
Até mesmo para aprendizado da gente.
Grato desde já.
Diramos
- Dividir arquivo em 02 colunas iguais,
nerobarrabas <=