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
mget * (obtein bestanden uit de huidige directory, maar niet de bestanden van sub-directories) Peter321 Programmeren en Shell Scripting 0 03-12-2009 11:59
Samenvoegen van bestanden van differrent grootte met een gemeenschappelijk gebied in beide bestanden met awk shashi1982 Programmeren en Shell Scripting 2 03-03-2009 07:12
Ik moet een script te vinden socials bestanden in-en output van een lijst van deze bestanden NewSolarisAdmin Programmeren en Shell Scripting 1 02-19-2009 01:01 PM
Vind multuple duplicaten van bestanden met 2 diff typen bestanden ricky007 Programmeren en Shell Scripting 2 03-04-2008 01:46 PM
tekstbestanden, ASCII bestanden, binaire bestanden en FTP-overdrachten Perderabo Answers to Frequently Asked Questions 0 04-08-2004 05:25 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 04-22-2009
timgolding timgolding is offline
Geregistreerde gebruiker
  
 

Join Date: december 2008
Posts: 34
sed heeft zeored mijn bestanden. Help me alstublieft met sed

Ik maakte een script te werken veel van XML-bestanden. te slaan me wat tijd. Ran het en het vervangen van alle bestanden met een 0kb file. Het probleem Ik had is dat ik gebruik sed veranderen xml node <doc_root>. Het probleem met deze is het een / in de laatste XML-tag en het spul binnen ook een stelletje hebben / want het is een bestand pad. Dus ik ben met behulp van sed en hoopte dat dit zou werken:


Code:
sed 's/<doc_root><\/doc_root>/<doc_root>\/'$i'\/web<\/doc_root>/g' $my_file > $my_file

Is mijn probleem in de regex of is het omdat ik my_file $> $ my_file gebruik? heb ik nodig om het te kopiëren naar een tijdelijk bestand eerst de mv het naar oude bestand?
Of als het de regex kan iemand helpen met die
Hier is de zoekstring

Code:
<doc_root></doc_root>

Hier is een typisch vervangen string
Code:
<doc_root>/domain.co.uk/web</doc_root>

waar de daomin.co.uk zal een argument van een for-lus namelijk $ i

Please help voor mijn baas wordt boos op mij
  #2 (permalink)  
Old 04-22-2009
devtakh devtakh is offline
Geregistreerde gebruiker
  
 

Join Datum: oktober 2007
Locatie: Bangalore
Posts: 514
Citaat:
Oorspronkelijk geplaatst door timgolding View Post
Ik maakte een script te werken veel van XML-bestanden. te slaan me wat tijd. Ran het en het vervangen van alle bestanden met een 0kb file. Het probleem Ik had is dat ik gebruik sed veranderen xml node <doc_root>. Het probleem met deze is het een / in de laatste XML-tag en het spul binnen ook een stelletje hebben / want het is een bestand pad. Dus ik ben met behulp van sed en hoopte dat dit zou werken:


Code:
sed 's/<doc_root><\/doc_root>/<doc_root>\/'$i'\/web<\/doc_root>/g' $my_file > $my_file

Is mijn probleem in de regex of is het omdat ik my_file $> $ my_file gebruik? heb ik nodig om het te kopiëren naar een tijdelijk bestand eerst de mv het naar oude bestand?
Of als het de regex kan iemand helpen met die
Hier is de zoekstring

Code:
<doc_root></doc_root>

Hier is een typisch vervangen string
Code:
<doc_root>/domain.co.uk/web</doc_root>

waar de daomin.co.uk zal een argument van een for-lus namelijk $ i

Please help voor mijn baas wordt boos op mij

Ik zal kijken naar de functie van de sed maar u bent om de output naar dezelfde bestandsnaam, je shud nooit doen. dat is de reden waarom u zijn 0kb file.

omleiden naar een tijdelijk bestand
Controleer het resultaat
mv tempfile bestandsnaam


sante,
Devaraj Takhellambam
  #3 (permalink)  
Old 04-22-2009
timgolding timgolding is offline
Geregistreerde gebruiker
  
 

Join Date: december 2008
Posts: 34
Thanks a lot guys die werkt
  #4 (permalink)  
Old 04-22-2009
vgersh99's Avatar
vgersh99 vgersh99 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Locatie: Boston, MA
Berichten: 5.131

Code:
sed "s#<doc_root></doc_root>#<doc_root>/$i/web</doc_root>#g" $my_file > /tmp/myTemp && mv /tmp/myTemp $my_file

OF

Code:
{ rm $my_file; sed "s#<doc_root></doc_root>#<doc_root>/$i/web</doc_root>#g" > $my_file; } < $my_file


Laatst gewijzigd door vgersh99; op 04.22.2009 12:45.. Reden: alternatieve
  #5 (permalink)  
Old 04-22-2009
timgolding timgolding is offline
Geregistreerde gebruiker
  
 

Join Date: december 2008
Posts: 34
koele veel variaties. Dit werkt ook


Code:
sed 's/<doc_root><\/doc_root>/<doc_root>\/'$i'\/web<\/doc_root>/g' $my_file > "tmp/"$i".xml"
mv "tmp/"$i".xml" $my_file

geen behoefte aan zo veel citaten.
Ook moet u citaat dubbele "$ i" in het geval een bestandsnaam is ingesloten quotes:

Code:
sed 's/<doc_root><\/doc_root>/<doc_root>\/'"$i"'\/web<\/doc_root>/g' $my_file > "tmp/$i.xml"
mv "tmp/$i.xml" "$my_file"

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 01:42.


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