🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #15081

Re: Leer líneas de un fichero

#15081
From: EstEl
Date: Wed, 16 Aug 2000 00:00
92 lines
4109 bytes
A ver si puedo decir algo a Oscar Manuel......

>#!/bin/bash
>RESULT=/tmp/onmap
>nmap -n -sP -PI 192.168.0.1-254 -m $RESULT
>linea=$(cat $RESULT|read)
>#linea=$(cat $RESULT|read host ip up_down final)
>/bin/echo $linea $host $ip $up_down $final
>$REPLY                                                                      

No tengo muy claro lo que pretendes la verdad jeje a ver si la idea esta es
lo que pretendes...... 

Hacer un scaneo de lo que sea y meterlo en un archivo (mi nmap no tien la
opcion -m :?)
Cojerte linea a linea al archivo y mostrarlo como a ti te gusta

>Obviamente, quiero leer todas las l�neas generadas, pero para probar he
>querido leer la primera l�nea y almacenarla en $linea, pero me sale en
>blanco. Una vez conseguido esto, pretendo hacer un bucle para leer l�nea
>a l�nea, tratar los resultados y leer la siguiente l�nea, pero tampoco
>s� c�mo controlar el fin de fichero. Se notar� mi falta de contacto con
>bash, pero espero sepais comprenderlo.

Bueno a ver que se puede hacer:

-Metodo chapuza

Cojerte el comando tail o head (leetelos ;)) e ir cojiendo las lineas de ese
modo (metiendolo en un bucle) 
Para controlar el fin de fichero lo mas comodo seria hacer un  cat|wc que te
diga las lineas y meter ese valor en un for (lo malo es que los for del bash
son muy raritos XXDD) Pero vamos si quieres usar un for te lo puedes hacer
tu con un while y una variable contador. la cosa quedaria asi mas o menos

conta=$(cat $RESULT|wc -l)
contador=conta
while contador _eq_ conta do;
 lo que quieras
 conta=conta+1
;done

-METODO ELEGANTE (en mi opinion) 

Usar el awk que es precisamente para eso... bueno para eso y para un monton
de cosas mas jeje

La idea es que si tu le pasas un archivo con campos separador por espacios
(o por lo que quieras, puedes definirte tu propio separador de campo) al awk
el te lo procesa linea a linea y te lo muestra como quieras

Veamos un ejemplillo ya veras que para lo que lo quieres es lo mas sencillo
imaginate que quieres mostrar los campos 3 4 2 5 en ese orden

awk -f <nombre del archivo> '{print $3,$4,$2,$5}'

Pos ya esta..... ahora imaginate que a eso le quieres poner una cabecera
para que en l aprimera linea te quede potito (a ver si me acuerdo) 

awk -f <nombre del archivo> 'BEGIN {ip puerto lo que sea} {print $3,$4,$2,$5}'

Pos eso..... espero haberte picao para que le eches un ojillo al awk por que
creo que es tu solucion para esto (y en muchos laos dicen que es la navaja
suiza del unix)

>1) Esto es por simple curiosidad �Se pueden especificar dos (o m�s)
>shells en un mismo script? Ejemplo:
>
>#!/bin/bash
>
>...
>
>#!/usr/bin/perl

Pues no tengo ni idea, lo que si que se es que al hacerlo te crea una
subshell con lo que chupara mas..... (creo)


>2) En el script de mi programilla, cuando ejecuto el nmap, se me activa
>el WOL de la otra m�quina y se enciende. �Por qu�? �C�mo evitarlo (sin
>quitar el cable WOL ni el latiguillo, obviamente)?

que es el wol?

PD: para "tan poquita cosa" yo le metia una sh o una ksh que son casi lo mismo
;)
-- 
Este mail esta en.......
(      (     (    (   (  ( ((in Dolby Pro Logic)) )  )   )    )    )      )
                  Enrique(EstEl en irc.unionlatina.org:#berta)
                      Usuario registrado de Linux:140947
Si no se oye la musica configura bien windows y reinicia un par de veces...
Technical Details
Message-ID: <j2gen8.0j.ln@debian>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <39999EE1.BFBF9AE4@omgs.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,1acfdd076705ea7c
X-Google-Attributes: gidf86c8,public
From: Enrique@imladris.org (EstEl)
Subject: Re: Leer líneas de un fichero
Date: 2000/08/16
Message-ID: <j2gen8.0j.ln@debian>
X-Deja-AN: 659604307
Content-Transfer-Encoding: 8bit
References: <39999EE1.BFBF9AE4@omgs.es>
Content-Type: text/plain; charset=iso-8859-1
X-Trace: fu-berlin.de 966573192 9192745 62.82.250.236 (16 [31308])
Organization: Grupo de Empresas Antakira
Mime-Version: 1.0
User-Agent: slrn/0.9.5.3 (UNIX)
Reply-To: estelANTISPAM@upseros.com
Newsgroups: es.comp.os.linux.programacion