elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BASH] Sacar informacion de un archivo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BASH] Sacar informacion de un archivo  (Leído 3,570 veces)
Delacure Mihawk

Desconectado Desconectado

Mensajes: 99


Lulz


Ver Perfil
[BASH] Sacar informacion de un archivo
« en: 17 Diciembre 2013, 11:55 am »

Buenas, estoy teniendo problemas al tener que sacar información de un  archivo de texto, tiene el siguiente formato:
Código:
*
10.138.38.97
192.168.0.11
10.140.28.1
10.140.132.65
10.138.38.97
*
10.138.43.65
192.168.0.11
172.25.6.234
10.140.28.1
10.138.30.33
172.25.10.34
172.25.0.146
172.25.11.161
10.138.43.65
*
10.138.160.161
192.168.0.11
10.138.49.1
172.25.10.34
172.25.0.146
10.138.160.161
*
...


son grupos de IP's, que empiezan y terminan con la misma IP. Mi intencion es coger los "bloques" de IPs y ponerlos dentro de un vector en funcion de la IP que necessite.

Si alguien puede darme un ejemplo de como poner este fragmento dentro de un vector ya me las apaño:
Citar
10.138.38.97
192.168.0.11
10.140.28.1
10.140.132.65
10.138.38.97

Graciass


« Última modificación: 21 Enero 2014, 22:37 pm por Eleкtro » En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: [BASH] Sacar informacion de un archivo
« Respuesta #1 en: 18 Diciembre 2013, 01:14 am »

Con esto podrías empezar a jugar ...

Código
  1. let count=-1
  2.  
  3. declare -a ips
  4.  
  5. while read line; do
  6.    if [[ ${line} =~ ^\*$ ]]; then
  7.        ((count++));
  8.    else
  9.        ips=("${ips[@]}" "${line}")
  10.    fi
  11. done < <(cat txt.txt)
  12.  
  13. for i in $(seq 0 $((${#ips[@]}-1)))
  14. do
  15.    echo "i=$i - ${ips[$i]}"
  16. done

Si puedes usa mejor un script hecho en otro lenguaje que tenga buenas estructuras de datos.


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Delacure Mihawk

Desconectado Desconectado

Mensajes: 99


Lulz


Ver Perfil
Re: [BASH] Sacar informacion de un archivo
« Respuesta #2 en: 18 Diciembre 2013, 10:16 am »

Gracias Leo por tu ayuda!
Si puedes usa mejor un script hecho en otro lenguaje que tenga buenas estructuras de datos.

Dentro de nada voy a tener bastante tiempo libre, que lenguaje me recomiendas?
En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: [BASH] Sacar informacion de un archivo
« Respuesta #3 en: 18 Diciembre 2013, 20:52 pm »

Depende de qué quieras hacer con ese lenguaje ...
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
jdomgo3

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: [BASH] Sacar informacion de un archivo
« Respuesta #4 en: 21 Enero 2014, 21:48 pm »

Para imprimir bloques con un inicio y un fin, incluidos estos, lo que yo suelo usar es el comando sed:

Código
  1. sed -n -e '/10.138.43.65/,/10.138.43.65/p' archivo.txt

Cuidado con el sed si vas a utilizar variables en lugar de texto a fuego, en ese caso usa comillas dobles en lugar de simples, quedaría así:

Código
  1. sed -n -e "/${IP_DE_INICIO}/,/${IP_DE_FIN}/p" archivo.txt

Pruébalo, yo lo utilizo muchísimo en el trabajo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
guardar bash en un archivo (ayuda)
Scripting
n0bat0 5 5,946 Último mensaje 16 Julio 2006, 07:26 am
por Inoxia
Sacar información de archivo access protegido
Bases de Datos
@synthesize 1 2,835 Último mensaje 10 Febrero 2012, 18:18 pm
por axsoft
crear archivo bash script
Scripting
ragnarok123456 0 2,034 Último mensaje 19 Febrero 2013, 04:17 am
por ragnarok123456
[PDF]Informacion sobre BASH
Scripting
chulas2106 0 1,555 Último mensaje 14 Enero 2015, 22:19 pm
por chulas2106
[Bash] detectar tamaño de archivo base a archivo creado [DUDA]
Scripting
KZN 0 3,119 Último mensaje 26 Mayo 2015, 21:59 pm
por KZN
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines