Re: script bash
- To: debian-italian@lists.debian.org
- Subject: Re: script bash
- From: Lucio Crusca <lcml@pixel.it>
- Date: Fri, 18 Nov 2005 17:05:41 +0100
- Message-id: <dlku4l$o86$1@sea.gmane.org>
- References: <003701c5ec55$ddde8410$03fe11ac@barbaglia>
Andrea Barbaglia ha scritto:
> Il file ha un formato abbastanza astruso ed è fatto in questo modo:
> 91190 MACH HRS EARNED RN/SU 14,199.91
> Qualche suggerimento???
Metti a fuoco i delimitatori, non il tipo dei campi. Dato che il primo campo
è numerico, possiamo dire che il primo spazio delimita certamente il primo
campo.
Dato che l'ultimo campo è anche numerico, possiamo dire che l'ultimo spazio
viene appena prima dell'ultimo campo. Quindi conviene usare lo spazio come
delimitatore.
Abbiamo però un problema: lo spazio ci genera vari campi di troppo, ovvero
uno per ogni parola che compone il secondo campo. Sappiamo però che
l'ultimo campo dal punto di vista di awk è sempre il nostro terzo campo.
Quindi dividendo la riga con lo spazio come delimitatore, siamo in grado di
distinguere i campi. In awk c'è il modo per farsi dire quanti sono i campi
(non lo ricordo a memoria) e con quello puoi capire che numero abbia
l'ultimo campo e quanti campi di awk compongano ciò che tu consideri il
secondo campo.
Dato questo "semplice" ragionamento, basta tradurlo in codice awk...
Reply to:
- References:
- script bash
- From: "Andrea Barbaglia" <andrea.barbaglia@grazianotrasmissioni.it>