The UNIX and Linux Forums  

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Regex pppswing Shell-programmering och Skript 5 06-30-2008 11:22
Ett enkelt hitta och ersätta utan att använda någon regex (bash) srikanths Shell-programmering och Skript 2 03-18-2008 08:08
Regex deepakpv Shell-programmering och Skript 6 03-28-2007 05:18
Regex? Please help lunac UNIX for Dummies Frågor & Svar 7 01-30-2007 01:13
sed regex Shakey21 UNIX for Dummies Frågor & Svar 4 01-31-2002 09:16

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 Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 08-31-2008
evilfreakz evilfreakz is offline
Registered User
  
 

Join Date: Aug 2008
Inlägg: 3
Behöver du hjälp med Simple Regex

Jag har en fråga. Hur man gör detta? Jag menar och yttrandefrihet i regex.

Lista alla filer i aktuell katalog som inte innehåller orden använda OCH ta.

Thx.
  #2 (permalänk)  
Old 08-31-2008
eran era is offline Forum Advisor  
Herder av Useless Cats (På sabbatsår)
  
 

Join Date: mars 2008
Ort: / det är / / bara / bin / sh
Inlägg: 3652
Förutsatt att du vill ha ett svar, snarare än en teori, något som


Kod:
for f in *; do
  grep use "$f" >/dev/null && continue
  grep take "$f" >/dev/null && continue
  # file contains neither if we get to here; report its file name
  echo "$f"
done

Om du verkligen behöver detta göras på vanliga uttryck enbart, det finns inget enkelt sätt att ange detta i vanliga uttryck. Teoretiskt skulle det kunna vara en aktör och att parallellt operatören | men i praktiken är det ganska meningslöst, och även komplicerar regex motorn en rättvis bitars (om jag minns det väsentliga av forskningsrapporter om detta ämne korrekt).
  #3 (permalänk)  
Old 08-31-2008
Lakris Lakris is offline
Registered User
  
 

Join Date: oktober 2007
Inlägg: 246
Från toppen av mitt huvud, jag skulle använda något liknande


Kod:
grep -L use $(grep -L take *.txt)

vilket innebär första (i prenthesis) hitta alla filer som inte innehåller ordet vidta, och i listan över filer, hitta alla filer som inte innehåller ordet används.
Men jag är säker på att det är ett sätt att använda eller i regexp ..

/ Lakris
  #4 (permalänk)  
Old 08-31-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.346
Använda egrep söker $ var1 ELLER $ var2:


Kod:
egrep "[$var1]|[$var2]" file

Invert Match:


Kod:
egrep -v "[$var1]|[$var2]" file

Sök efter $ var1 OCH $ var2:


Kod:
egrep "$var1.*$var2|$var2.*$var1" file

Invert Match:


Kod:
egrep -v "$var1.*$var2|$var2.*$var1" file

Hälsningar

Senast redigerad av Franklin52; 08-31-2008 vid 07:29.. Anledning: Lägga invertsocker match
  #5 (permalänk)  
Old 08-31-2008
ghostdog74 ghostdog74 is offline Forum Advisor  
Registered User
  
 

Join Date: Sep 2006
Inlägg: 2558
Jag tycker att OP betyder ordet "användning" och "ta" ska inte i filen. Så egrep lösning inte fungerar är "användning" och "ta" på separata rader.
  #6 (permalänk)  
Old 08-31-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.346
Citat:
Ursprungligen postat av ghostdog74 View Post
Jag tycker att OP betyder ordet "användning" och "ta" ska inte i filen. Så egrep lösning inte fungerar är "användning" och "ta" på separata rader.
Tyvärr, bara vaken Jag har för att läsa frågan ordentligt.

Hälsningar
  #7 (permalänk)  
Old 08-31-2008
Lakris Lakris is offline
Registered User
  
 

Join Date: oktober 2007
Inlägg: 246
meningslös användning av katt?

Jag antar att jag misstolkat OP, nu är min supersilly superuseless användning av katt och pipa ...


Kod:
for x in *.txt;do cat $x|tr "\n" " "|egrep '(use.*take|take.*use)'&>/dev/null; [ $? == 1 ] && echo $x;done

men jag tror det blir jobbet gjort?

/ Lakris
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 12:21.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0