The UNIX and Linux Forums  
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.

Go Back   UNIX og Linux Forums > Top Forums > UNIX for Dummies Spørsmål og svar
.
google unix.com



UNIX for Dummies Spørsmål og svar Hvis du er usikker på hvor du skal legge inn en UNIX-eller Linux-spørsmålet, legger den her. Alle UNIX og Linux newbies velkommen!

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
enkle tcsh spørsmålet bruker foreach moldoverb Shell programmering og Skripting 1 01-07-2009 08:05
foreach statement i ksh asulli01 UNIX for Dummies Spørsmål og svar 8 11-26-2008 03:55
foreach loop abch624 Shell programmering og Skripting 1 03-19-2008 09:34
foreach mappe eltinator Shell programmering og Skripting 7 08-13-2007 03:37
foreach sløyfe spørsmålet clipski UNIX for Dummies Spørsmål og svar 7 12-22-2005 01:28

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 denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 01-07-2009
moldoverb moldoverb is offline
Registrert bruker
  
 

Bli Date: Jan 2009
Innlegg: 5
foreach spørsmålet

OK, så jeg er svært rusten og er bare å komme tilbake til Unix etter 9 år.

Jeg står fast på noe lett. Jeg vil søke linje for linje for en streng i en fil, og jeg vil gjøre dette til en rekke filer i en katalog.

Dette fungerer fint for å gjøre søk:

mens du leser i; gjøre grep $ i file2; gjort <file1.txt

Dette fungerer også fint å lese en katalog:

foreach fil ( "/ bin / ls *. txt)
echo $ fil
slutt

men hvis jeg prøver og kombinere de to, ingen glede.

foreach fil ( "/ bin / ls *. txt)
mens du leser i; gjøre grep $ i file2; gjort <$ fil
slutt

Hjelp please!
  #2 (permalink)  
Old 01-07-2009
pludi's Avatar
pludi pludi is offline Forum Staff  
Moderator
  
 

Bli Dato: desember 2008
Sted:. Ved
Innlegg: 1877
Prøv dette:
Code:
for file in `/bin/ls *.txt`
do
    while read i
    do
        grep $i file2
    done < $file
done
Selvfølgelig, hvis grep støtter bryteren-f du kan prøve
Code:
for file in `find . -prune -name '*.txt' -print`
do
    grep -f $file $file2
done
HTH
/ pludi
  #3 (permalink)  
Old 01-07-2009
moldoverb moldoverb is offline
Registrert bruker
  
 

Bli Date: Jan 2009
Innlegg: 5
Jeg får en bash: $ file: flertydig omdirigere "i det første eksempelet.
  #4 (permalink)  
Old 01-11-2009
pludi's Avatar
pludi pludi is offline Forum Staff  
Moderator
  
 

Bli Dato: desember 2008
Sted:. Ved
Innlegg: 1877
Så omskrive den indre løkken til
Code:
cat ${file} | while read i
do
    grep $i file2
done
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 10:28.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0