The UNIX and Linux Forums  
Hallo und herzlich Willkommen aus den Vereinigten Staaten, die UNIX-und Linux-Foren! Vielen Dank für Ihren Besuch und die Teilnahme an unserem Global Community.

Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX for Dummies Questions & Answers
.
Google unix.com



UNIX for Dummies Questions & Answers Wenn Sie nicht sicher sind, wo Sie eine UNIX-oder Linux-Frage, post it here. Alle UNIX-und Linux-Anfänger willkommen!

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Entfernen von Leerzeilen dhanamurthy Shell Programmierung und Scripting 3 05-08-2008 01:52 AM
Beseitigung Leerzeilen ... shashi_kiran_v UNIX for Dummies Questions & Answers 4 09-06-2005 12:39 AM
Entfernen Sie leere Zeilen osymad UNIX for Dummies Questions & Answers 4 08-27-2005 06:41 AM
löschen Leerzeilen oder Zeilen mit Leerzeichen nur vascobrito UNIX for Dummies Questions & Answers 3 01-13-2004 07:36 AM
Blank Lines - das Ende der Datei saabir Shell Programmierung und Scripting 4 07-15-2003 11:55 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 05-23-2007
kthatch kthatch is offline
Registrierte Nutzer
  
 

Join Date: März 2007
Beiträge: 28
Wie zu zählen Linien - ignoriert Leerzeilen und Zeilen kommentiert

Wie lautet der Befehl, zu zählen, Zeilen in einer Datei, sondern ignorieren Leerzeilen und Zeilen kommentiert?

Ich habe eine Datei mit 4 Sektionen in ihm, und ich möchte jedem Abschnitt zu zählen, ohne die Leerzeilen und Kommentare ... und dann am Ende insgesamt.

Hier ist ein Beispiel für das, was ich möchte, dass mein Ausgabe in etwa folgendermaßen aussehen:

# # # # Kommentar
line1
line2
Linie 3
Line4
line5
Line6

6 Zeilen

# # # # Kommentar
line7
line8
line9
line10
line11
line12
line13
line14
line15
line16
line17

11 Zeilen

# # # # Kommentar
line18
line19
line20
line21
line22

5 Zeilen

# # # # Kommentar
line23
line24
line25
line26
line27
line28
line29
line30
line31
line32
line33
line34
line35

13 Zeilen

35 Gesamt-Linien

Vielen Dank im Voraus für Ihre Hilfe!
  #2 (permalink)  
Old 05-23-2007
ghostdog74 ghostdog74 is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Sep 2006
Beiträge: 2518
Code:
awk '!/^#/ && !/^$/{c++}END{print c}' "file"
  #3 (permalink)  
Old 05-23-2007
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Join Date: März 2005
Ort: Irland
Posts: 4209
Zitat:
Zitat von ghostdog74
Code:
awk '!/^#/ && !/^$/{c++}END{print c}' "file"
zu erweitern, dass etwas (nicht getestet):

Code:
awk '!/^[ \t]*(#|$)/ {c++; ct++} /#/ && c { printf "%s\n\n\n%s", c, $0; c=0} END { print ct}' file

Zuletzt bearbeitet von reborg; am 05-23-2007 08:17 PM..
  #4 (permalink)  
Old 05-24-2007
matrixmadhan matrixmadhan is offline Forum Advisor  
Technorati Master
  
 

Join Date: März 2005
Ort: Blattknoten in B + Baum
Posts: 2952
viel einfacher! :)
Code:
egrep -cv '#|^$' fielname
  #5 (permalink)  
Old 05-24-2007
drl's Avatar
DRL drl is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Apr 2007
Ort: Saint Paul, MN USA / BSD, CentOS, Debian, OS X, Solaris
Beiträge: 706
Hi, kthatch.

Sie haben eine ausgezeichnete Arbeit von uns, wie die Ausgabe aussehen soll.

Allerdings, Sie haben nicht angegeben werden, wie die Bereiche voneinander getrennt sind, noch, was Sie für einen Kommentar - eine Zeichenfolge am Anfang einer Zeile, eine Zeichenkette irgendwo in einer Zeile, usw.

Es ist ein Standard-Werkzeug nl kennt die Abschnitte:
Zitat:
-d, - section-delimiter \u003d CC
Einsatz für die Trennung CC logische Seiten
Auszug aus Mann nl
Es ist auch csplit, Die können eine Datei in Stücke, die sich auf das Auftreten von einem regulären Ausdruck.

Viele der angebotenen Lösungen sind wahrscheinlich anpassungsfähig, was die Datei-Format ist, aber Sie können mehr über-Punkt-Vorschläge, wenn Sie mehr genau ... cheers, DRL
  #6 (permalink)  
Old 05-24-2007
kthatch kthatch is offline
Registrierte Nutzer
  
 

Join Date: März 2007
Beiträge: 28
Ich habe versucht jede dieser Anregungen und weder gearbeitet.

Ergebnisse:

# egrep-cv'#|^$' active_servers
angezeigt, die diese auf dem Bildschirm, sondern nur, nicht in der Datei

# awk'!/^#/ & & !/^$/{ C + +) END (print c) 'active_servers
wie oben

# awk'!/^[ \ t ]*(#|$)/ (c + +;) ct + + / # / & & c (printf "% s \ n \ n \ n% s", c, $ 0, c \u003d 0) END (print) ct 'active_servers
awk: Syntaxfehler in der Nähe der Linie 1
awk: Rettung in der Nähe der Linie 1

Um mehr Details, ich habe ein Skript, die die Ausgabe oben (in meinem ursprünglichen post) in eine Datei - unter den Summen, dass ich mit der Suche nach Hilfe. Wenn ich beziehe mich auf Kommentare, ich meine Zeilen, geht mit # # und die Teile sind getrennt durch eine leere Zeile als Ergebnis dieser "sed '/ das / (x, p, x;)' "in meinem Skript.

Nochmals vielen Dank! Weitere Vorschläge wären willkommen!
Closed Thread

Lesezeichen

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 09:59 AM.


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