The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > UNIX voor Dummies Questions & Answers
.
google unix.com



UNIX voor Dummies Questions & Answers Als u niet zeker weet waar je een Unix-of Linux vraag, post het hier. Alle UNIX-en Linux beginners van harte welkom!!

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
tcsh eenvoudige vraag met behulp foreach moldoverb Programmeren en Shell Scripting 1 01-07-2009 08:05 PM
foreach statement in ksh asulli01 UNIX voor Dummies Questions & Answers 8 11-26-2008 03:55 PM
foreach lus abch624 Programmeren en Shell Scripting 1 03-19-2008 09:34 PM
foreach map eltinator Programmeren en Shell Scripting 7 08-13-2007 03:37
foreach lus vraag clipski UNIX voor Dummies Questions & Answers 7 12-22-2005 01:28 PM

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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 01-07-2009
moldoverb moldoverb is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posts: 5
foreach vraag

OK, dus ik ben erg roestig en ben maar net terug naar Unix na 9 jaar.

Ik ben vast op iets eenvoudig. Ik wil zoeken lijn per lijn voor een string in een bestand, en ik wil dit doen om een reeks bestanden in een directory.

Dit werkt prima te doen zoeken:

terwijl gelezen i; doen grep $ i bestand2; gedaan <file1.txt

Dit werkt ook fijn om te lezen een map:

foreach bestand ( "/ bin / ls *. txt)
echo $ file
eindigen

maar als ik probeer, en het combineren van de twee, geen vreugde.

foreach bestand ( "/ bin / ls *. txt)
terwijl gelezen i; doen grep $ i bestand2; gedaan <$ bestand
eindigen

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

Join Date: december 2008
Locatie: op.
Berichten: 1.879
Probeer dit:
Code:
for file in `/bin/ls *.txt`
do
    while read i
    do
        grep $i file2
    done < $file
done
Natuurlijk, als je grep ondersteunt de-f optie kun je proberen
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
Geregistreerde gebruiker
  
 

Join Date: Jan 2009
Posts: 5
Ik krijg een 'bash: $ file: dubbelzinnig redirect' in het eerste voorbeeld.
  #4 (permalink)  
Old 01-11-2009
pludi's Avatar
pludi pludi is offline Forum Staff  
Moderator
  
 

Join Date: december 2008
Locatie: op.
Berichten: 1.879
Dan herschrijven van de binnenste lus
Code:
cat ${file} | while read i
do
    grep $i file2
done
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 07:33.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0