Pular para o conteúdo

Substituir caracteres [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Substituir caracteres [RESOLVIDO]

Enviado em 11/08/2010 - 14:19h

Olá pessoal, estou tendo um grande problema é o seguinte:
Tenho um arquivo com as seguintes linhas

[Inicio Arquivo]
192.168.1.35
255.255.255.0
eth1
[Fim do Arquivo]

Eu preciso que uma variavel receba a primeira linha e substituir o 35 por 0/24 só que o 35 não é fixo ele pode ser 1, 50, 200, 128.

Eu tinha tentando algo assim mas nao funcionou pois eu naum consegui substituir os caracteres
IpLocal=$(awk 'NR==1{print $1}' /etc/sgr/network/ip2)

Obrigado e aguardo respostas

Responder tópico

2. Re: Substituir caracteres [RESOLVIDO]

Melhor resposta

Enviado em 12/08/2010 - 11:47h

Você pode tentar algo do tipo:

sed -e 's/\(.*\)\.\(.*\)/\1\.0\/24/' -e '1q' arquivo

Ex.:

cat arquivo
192.168.1.2
255.255.255.0

sed -e 's/\(.*\)\.\(.*\)/\1\.0\/24/' -e '1q' arquivo
192.168.1.0/24

3. Gambiarra

Enviado em 11/08/2010 - 16:09h

Pessoal no desespero e urgencia fiz assim se alguem tiver algo mais pratico

#!/bin/bash
Part1=$(awk -F "." 'NR==1{print $1}' /etc/sgr/network/ip2)
Part2=$(awk -F "." 'NR==1{print $2}' /etc/sgr/network/ip2)
Part3=$(awk -F "." 'NR==1{print $3}' /etc/sgr/network/ip2)
IpLocal=$Part1.$Part2.$Part3.0/24

4. Deu Certo

Enviado em 12/08/2010 - 13:52h

Valew amigão, deu certo !!!

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder