The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Aspettatevi di aumentare le dimensioni del buffer, si prega di aiuto jaduks Shell scripting e di programmazione 1 10-12-2007 12:07 PM
modalità per aumentare la dimensione del buffer dello schermo della console? the_learner UNIX for Dummies Domande & Risposte 5 04-25-2007 06:31 PM
Come aumentare la dimensione del buffer in Unix ziabegg UNIX for Dummies Domande & Risposte 3 01-05-2007 03:17 PM
Come aumentare la dimensione del buffer in Unix ziabegg UNIX e avanzata per utenti esperti 0 12-23-2006 03:11 AM
buffer cache size gsr_kashyap Red Hat 0 09-07-2006 02:34 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 03-17-2008
ssunda6 ssunda6 is offline
Utente Registrato
  
 

Iscriviti Data: febbraio 2008
Interventi: 7
Aumentare la dimensione del buffer di leggere lunghe linee di

Hi All,

Sto cercando di leggere da un comando di uscita. Il formato di output è il seguente:

Codice:
Thursday 13 Mar 2008 Information 
This is sample text
Friday 14 Mar 2008 Warning
This is one more sample text
La prima linea contiene informtation (data, ecc) e la 2a riga contiene alcune informazioni.

Il problema è a volte la lunghezza della 2a linea è di più e che è stato letto come due linee di Unix. Ma voglio che, come leggere una riga stessa.

Siamo in grado di aumentare la dimensione del buffer in linea Unix?
Mi auguro che la questione è chiara.

Saluti,
Ssunda.
  #2 (permalink)  
Old 03-17-2008
epoca
Valutazione
  
 

Messaggi: n / a
Bit: 0 [Banking]
Il tuo problema non è "dimensione del buffer". Se si utilizza un comando in cui si legge una riga alla volta, si leggono anche lungo le linee, ma se l'ingresso è più di una riga, solo leggere la prima riga.

Let's riformulare questo problema. Come si fa a sapere quando è qualcosa di più di una riga? Perché la riga successiva non è quindi una data timbro. Quindi è possibile creare un semplice parser per questo formato, in cui si riconosce tutto fino alla prossima data timbro come uno degli input record.

Questo probabilmente è meglio farlo con un linguaggio di scripting come awk o Perl o Python, ma solo per il gusto di tesi, ecco una soluzione rapida e sporca in script di shell:

Codice:
#!/bin/sh

date=
input=
nl="
"  # yes, that's opening quote, newline, closing quote
while read line; do
  case $line in
    *day\ [0-9][0-9]\ *\ [12][0-9][0-9][0-9]\ *)
      # warning! y3k problem
      # warning! fragile matching, would be better with regex
      # warning! basically untested code anyway
      case $date in '') ;;
        *) echo "Result for '$date'":
	    echo "$input" ;;
      esac
      input=
      date=$line
      ;;
    *)
      input="$input${input:+$nl}$line"
      ;;
  esac
done

# whatever is left at end of file is a result too
echo "Result for '$date'":
echo "$input"
  #3 (permalink)  
Old 03-17-2008
ssunda6 ssunda6 is offline
Utente Registrato
  
 

Iscriviti Data: febbraio 2008
Interventi: 7
HI epoca,

Grazie per la risposta.
Hai il tuo punto. Ma c'è comunque che siamo in grado di aumentare la dimensione del buffer?
In SQL, usiamo 'impostare linea 200' .. per raggiungere lo stesso.

Grazie in anticipo.
  #4 (permalink)  
Old 03-17-2008
epoca
Valutazione
  
 

Messaggi: n / a
Bit: 0 [Banking]
La tua domanda non è ben definita. Dimensione del buffer di che cosa? Che cosa stai usando il comando a leggere l'output? Se il risultato è un limite per quanto tempo le linee si legge, si può trovare una versione che non ha tale limite?

(Ad esempio, il GNU coreutils strumenti sono spesso meglio in questo senso che qualunque strumenti equivalenti spediti con il sistema operativo commerciale.)
Closed Thread

Segnalibri

Tag
perl, perl regex, regex

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 07:38 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0