Bruno_B
(usa Debian)
Enviado em 08/11/2019 - 22:32h
msoliver escreveu:
Bruno_B escreveu:
Boa tarde Pessoal,
Sou de Redes e há duas semanas comecei a estudar shell script para automatizar algumas tarefas no meu trabalho. Eu tentei encontrar alguma solução parecida para meu problema no Forúm mas não obtive sucesso, me desculpem a ignorancia se for simples...
Meu script basicamente está conectando em Switchs via SSH (Interação do Expect) e joga todas as informações em um arquivo geral "log.txt". A partir dele estou filtrando as informações que preciso com "greps" e "seds", porém as informações dos equipamentos estão todas sem quebra de linha e gostaria de separar cada device com um simples "\n". Minha lógica seria que onde ele encontrar "SerialNumber: +12Numeros a frente" inserisse a quebra de linha.
O Arquivo tem este padrão:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
O que eu quero fazer:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
Agradeço desde já.
Boa tarde Bruno.
Veja se é isso:
sed -i 's/^SerialNumber.*$/&\n/' texto
Ou
sed -ri "s/^SerialNumber:[0-9]{12}$/&\n/" texto
_________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver
msoliver escreveu:
Bruno_B escreveu:
Boa tarde Pessoal,
Sou de Redes e há duas semanas comecei a estudar shell script para automatizar algumas tarefas no meu trabalho. Eu tentei encontrar alguma solução parecida para meu problema no Forúm mas não obtive sucesso, me desculpem a ignorancia se for simples...
Meu script basicamente está conectando em Switchs via SSH (Interação do Expect) e joga todas as informações em um arquivo geral "log.txt". A partir dele estou filtrando as informações que preciso com "greps" e "seds", porém as informações dos equipamentos estão todas sem quebra de linha e gostaria de separar cada device com um simples "\n". Minha lógica seria que onde ele encontrar "SerialNumber: +12Numeros a frente" inserisse a quebra de linha.
O Arquivo tem este padrão:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
O que eu quero fazer:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
Agradeço desde já.
Boa tarde Bruno.
Veja se é isso:
sed -i 's/^SerialNumber.*$/&\n/' texto
Ou
sed -ri "s/^SerialNumber:[0-9]{12}$/&\n/" texto
_________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver
msoliver escreveu:
Bruno_B escreveu:
Boa tarde Pessoal,
Sou de Redes e há duas semanas comecei a estudar shell script para automatizar algumas tarefas no meu trabalho. Eu tentei encontrar alguma solução parecida para meu problema no Forúm mas não obtive sucesso, me desculpem a ignorancia se for simples...
Meu script basicamente está conectando em Switchs via SSH (Interação do Expect) e joga todas as informações em um arquivo geral "log.txt". A partir dele estou filtrando as informações que preciso com "greps" e "seds", porém as informações dos equipamentos estão todas sem quebra de linha e gostaria de separar cada device com um simples "\n". Minha lógica seria que onde ele encontrar "SerialNumber: +12Numeros a frente" inserisse a quebra de linha.
O Arquivo tem este padrão:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
O que eu quero fazer:
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
ChassisSerialNumber:XXXXXXXXXX
setsystemlocation:ABCD
setsystemname:HOSTNAME
Type:VENDORY
SerialNumber:XXXXXXXXXX
Agradeço desde já.
Boa tarde Bruno.
Veja se é isso:
sed -i 's/^SerialNumber.*$/&\n/' texto
Ou
sed -ri "s/^SerialNumber:[0-9]{12}$/&\n/" texto
_________________________________________________________________
Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver
Obrigado Marcelo, a expressão me ajudou vou procurar estuda las um pouco mais!