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
Formatierung Anzahl Saiten nhatch UNIX for Dummies Questions & Answers 10 04-28-2009 01:55 AM
Parse abgesehen Saiten Komma getrennt Daten mit unterschiedlicher Anzahl von Feldern 2reperry Shell Programmierung und Scripting 7 09-12-2008 02:33 PM
wie die Suche mit 2 Strings. syamkp Shell Programmierung und Scripting 2 03-10-2008 04:50 AM
Suche zwischen Strings mit einem ODER pbsrinivas Shell Programmierung und Scripting 3 07-12-2007 05:46 AM
Suche nach Zeichenketten lesstjm UNIX for Dummies Questions & Answers 5 04-26-2002 10:58 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 11-14-2008
CarlosNC CarlosNC is offline
Registrierte Nutzer
  
 

Join Date: Oct 2008
Beiträge: 6
Unterschiedliche Anzahl von awk Such-Strings

Ich habe ein awk-Skript, das die eine unterschiedliche Anzahl von Such-Strings übergeben es als Kommandozeilen-Parameter ($ 1 $ 2 usw.). Es kann 1 oder 2 oder 3 oder mehr. Eine vereinfachte Version des Skripts ist:


Code:
awk -v TYP="$1 $2 $3 $4 $5 $6" '
  BEGIN {
       CTYP = split (TYP,TYPP," ")
  }
   {for ( i=1; i <= CTYP; i++ ) {
           if ($0 ~ TYPP[i]) {print; break}
      }}
 ' file1 > file2
exit 0

Das funktioniert, ist aber nicht effizient sind.
Könnte jemand vorgeschlagen, eine andere Methode, um dieses Szenario? Jede Hilfe ist willkommen.

Danke.
  #2 (permalink)  
Old 11-14-2008
Jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Ort: NM
Posts: 5808

Code:
#!/bin/ksh
set -A arr $@
cnt=0
while [[ cnt -lt ${#arr[*]} ]]
do
      echo ${arr[cnt]} 
      cnt=$$(( cnt + 1))
done > tmp.tmp
grep -f tmp.tmp mybigfile

  #3 (permalink)  
Old 11-24-2008
CarlosNC CarlosNC is offline
Registrierte Nutzer
  
 

Join Date: Oct 2008
Beiträge: 6
Dank Jim, das macht Sinn mit grep, aber ich hätte mehr klar, es muss awk, denn es gibt mehr zu meinem Skript, aber ich entfernt, es zu vereinfachen, meine hier. Awk ich hier, weil ich andere Infos Auszug in Bezug auf die Hits aus den Akten auch.
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 05:59 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