The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Erwarten Puffergröße erhöhen, bitte helfen jaduks Shell Programmierung und Scripting 1 10-12-2007 12:07 PM
wie die Größe der Konsole mit Puffer? the_learner UNIX for Dummies Questions & Answers 5 04-25-2007 06:31 PM
Wie zu erhöhen Puffergröße in Unix ziabegg UNIX for Dummies Questions & Answers 3 01-05-2007 03:17 PM
Wie, um die Puffergröße in Unix ziabegg UNIX für Fortgeschrittene und Experten 0 12-23-2006 03:11 AM
Puffer-Cache-Größe 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 Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 03-17-2008
ssunda6 ssunda6 is offline
Registrierte Nutzer
  
 

Join Date: Feb 2008
Beiträge: 7
Erhöhen Sie die Puffergröße zu lesen, lange Linien

Hi All,

Ich versuche zu lesen, Ausgabe von einem Befehl. Die Ausgabe-Format ist wie folgt:


Code:
Thursday 13 Mar 2008 Information 
This is sample text
Friday 14 Mar 2008 Warning
This is one more sample text

Die erste Zeile enthält informtation (Datum usw.) und die 2. Zeile enthält einige Informationen.

Das Problem ist manchmal der 2. Zeile die Länge ist, dass mehr und wird als zwei Zeilen in Unix. Aber ich möchte zu lesen, dass sich als eine Zeile.

Können wir die Linie Puffergröße in Unix?
Ich hoffe, die Frage ist klar.

Grüße,
Ssunda.
  #2 (permalink)  
Old 03-17-2008
Ära
Gast
  
 

Beiträge: n / a
Bits: 0 [Banking]
Ihr Problem ist nicht "Puffer". Wenn Sie einen Befehl, der lautet eine Zeile in einer Zeit, es wird auch lange Zeilen lesen, aber, wenn der Eingang ist mehr als eine Zeile, so wird nur die erste Zeile.

Lassen Sie uns dieses Problem formulieren. Woher wissen Sie, wenn etwas mehr als eine Zeile? Da die nächste Zeile ist dann nicht ein Datum. So können Sie einen einfachen Parser für dieses Format, das erkennt alles bis zum nächsten Datum als ein Eingang aufnehmen.

Dies ist wahrscheinlich am besten mit einer Skriptsprache wie awk oder Perl oder Python, sondern nur im Interesse der Argument, hier ist eine schnelle und schmutzige Lösung in Shell-Skript:


Code:
#!/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
Registrierte Nutzer
  
 

Join Date: Feb 2008
Beiträge: 7
HI-Ära,

Danke für die Antwort.
Haben Sie Ihre Nummer. Aber gibt es trotzdem, dass wir die Größe des Buffers?
In SQL, wir verwenden "gesetzt Linie 200" .. zur Erreichung des gleichen.

Vielen Dank im Voraus.
  #4 (permalink)  
Old 03-17-2008
Ära
Gast
  
 

Beiträge: n / a
Bits: 0 [Banking]
Ihre Frage ist nicht gut definiert. Puffergröße von was? Was Befehl verwenden Sie, um den Ausgang? Wenn es ein Limit, wie lange wird es lesen, finden Sie eine Version, die keine solche Grenze?

(Zum Beispiel, die GNU coreutils-Tools sind oft besser in dieser Hinsicht als gleichwertige Instrumente, was mit Ihrem kommerzielles Betriebssystem.)
Closed Thread

Lesezeichen

Tags
perl, perl regex, regex

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 03:23 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0