hola muchachos quizas aun no se acostumbran mucho a linux, osea yo diria que a las consolas, por mi parte prefiero utilizar comandos para todo y es asi como he aprendido durante estos años.
supongamos que tenemos un file llamado errores el cual tiene mucha basura y queremos solamente rescatar lo que queremos.
que seria unos ips para luego agregarlos a un filtro que baniara a esos ips (el ban seria para otro doc mas trabajado).
errores
Primeramente antes de realizar el parser hay que ver que caracter tenemos en comun entre toda esta mierda.
por lo que veo a primera vista serian los espacios. antes de hacer una regla general hago siempre un head que me mostrara la primera parte del archivo, por que hago eso ? por la simple razon que cuando le das un cat a un archivo superior a 20 mb te llenara la pantalla con mierda y posiblemente llegues a dosear tu server.
empezando a parsear
pero por que me sale solo eso ? por que con awk puse como delimitador el espacio (awk -F' ') ahora solo tienen que contar para llegar a la parte que necesitamos.
ahora solo nos queda el quitar el ]
se puede hacer de varias maneras a mi me gusta mas utilizar expresiones regulares aunque podriar utilizar cut u otros.
pero nos faltaria quitar las repetidas ? por supuesto muchachos. primero debemos ordenar (sort) y luego dejar solo las unicas (uniq). veamos como se veria el src.
pero vemos solo un ip y eran varias, por supuesto no se olviden de reemplazar el head por cat y veran la salida completa.
bueno son pocos solo puse un extracto del archivo real
que serian estos.
bueno cualquier duda sera contestada, recivo comentarios y ofertas de trabajo xD, obviamente esto es para que puedan jugar un poco con linea de comandos con una consola.
saludos
supongamos que tenemos un file llamado errores el cual tiene mucha basura y queremos solamente rescatar lo que queremos.
que seria unos ips para luego agregarlos a un filtro que baniara a esos ips (el ban seria para otro doc mas trabajado).
errores
Primeramente antes de realizar el parser hay que ver que caracter tenemos en comun entre toda esta mierda.
por lo que veo a primera vista serian los espacios. antes de hacer una regla general hago siempre un head que me mostrara la primera parte del archivo, por que hago eso ? por la simple razon que cuando le das un cat a un archivo superior a 20 mb te llenara la pantalla con mierda y posiblemente llegues a dosear tu server.
empezando a parsear
pero por que me sale solo eso ? por que con awk puse como delimitador el espacio (awk -F' ') ahora solo tienen que contar para llegar a la parte que necesitamos.
ahora solo nos queda el quitar el ]
se puede hacer de varias maneras a mi me gusta mas utilizar expresiones regulares aunque podriar utilizar cut u otros.
pero nos faltaria quitar las repetidas ? por supuesto muchachos. primero debemos ordenar (sort) y luego dejar solo las unicas (uniq). veamos como se veria el src.
pero vemos solo un ip y eran varias, por supuesto no se olviden de reemplazar el head por cat y veran la salida completa.
bueno son pocos solo puse un extracto del archivo real
que serian estos.
bueno cualquier duda sera contestada, recivo comentarios y ofertas de trabajo xD, obviamente esto es para que puedan jugar un poco con linea de comandos con una consola.
saludos