The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Snelle manier van zoeken en vervangen, help jkl_jkl Programmeren en Shell Scripting 1 03-06-2008 07:41
Perl: Zoek een string op de lijn vervolgens zoek en vervang tekst Crypto Programmeren en Shell Scripting 4 01-04-2008 10:24
Wat is de snelste manier om deze bestanden te verwijderen? tonyvirk UNIX voor Dummies Questions & Answers 4 01-01-2008 08:02 PM
Hoeft te zoeken en vervangen in meerdere bestanden in de directory hiërarchie umen Programmeren en Shell Scripting 3 12-24-2007 04:56
Zoeken en vervangen multi-line tekst in bestanden Marz Programmeren en Shell Scripting 10 10-10-2005 09:05

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-25-2008
dbsurf dbsurf is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Posts: 23
snel zoeken en vervangen in alle bestanden

Hoi

Ik moet naar een string in alle bestanden en vervangt THT string met lege ruimte en de noodzaak om te buigen alle bestanden in dezelfde map opnieuw.

Nu ben ik met behulp van

vinden. /-name "*. dmp" | xargs perl -pi-e 's / \ \ n / / g' | sed 's /.$// g'

maar nu zijn niet redirrecting goed.

haar rekening te veel tijd voor deze operatie.

Is er een manier te zoeken en te vervangen zeer snel in alle duizend bestanden snel en zonder herhaling.
  #2 (permalink)  
Old 01-25-2008
jim McNamara jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Locatie: NM
Berichten: 5.802
Dit verwijdert \ N, te vervangen door "" en vervolgens chops off het laatste teken van elke zin en voegt een spatie er. Weet je over dos2unix (of dos2ux)?


Code:
find ./ -name "*.dmp" | xargs perl -pi -e 's/\\N/ /g; s/.$/ /g'

Als je wilt lopen sneller proberen het gebruik van achtergrond processen:

Code:
cnt=0
find ./ -name "*.dmp" |\
while read file do
  perl -pi -e 's/\\N/ /g; s/.$/ /g'  $file  &
  cnt=$cnt+1
  z=$(( $cnt % 10 ))
  if [[ $z -eq 0 ]] ; then
     wait
  fi
done 
wait

Dit druist in tien processen tegelijk in de achtergrond. En dan wacht op de voltooiing. De code die u proivided vervangt niet de tekens met een spatie

Laatst gewijzigd door vgersh99; op 01.25.2008 02:43 PM.. Reden: missing ']'
  #3 (permalink)  
Old 01-25-2008
dbsurf dbsurf is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Posts: 23
Hi geeft de foutmelding met het gebruik bovenstaande code
syntax fout op regel 7: ']' onverwachte
  #4 (permalink)  
Old 01-25-2008
vgersh99's Avatar
vgersh99 vgersh99 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Locatie: Boston, MA
Berichten: 5.131
Ik heb de originele posting bewerkt door Jim.
  #5 (permalink)  
Old 01-25-2008
dbsurf dbsurf is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Posts: 23
Hoi

Is het werken?

Is het mogelijk om de plaats van de hieronder sed syntaxis ook op de bovenstaande xargs perl
scenario
sed -e: a-e'/;$/! N; s / \ n / /; ta '-e' s /;$//' bestand
  #6 (permalink)  
Old 01-25-2008
KevinADC KevinADC is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Posts: 731
Echt, de eisen zijn belachelijk. Er is geen manier om te zoeken en te vervangen alles in duizenden bestanden snel. Misschien vindt u enkele manieren om sneller dan anderen, maar niets gaat om een wondermiddel. Ik stel voor dat je probeert perls inplace editor, kan het sneller dan sed hoewel ik niet echt weten.
Closed Thread

Bladwijzers

Labels
linux

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 10:28.


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