Batch script plaats xcopy voor elke regel in het txt bestand

Status
Niet open voor verdere reacties.

lccookie1992

Gebruiker
Lid geworden
7 feb 2010
Berichten
790
Weet iemand hoe ik aan het begin van elke regel van een txt bestand xcopy krijg ?

Voorbeeld txt
C:\test
C:\test2
C:\test3

Voorbeeld txt met xcopy

xcopy C:\test
xcopy C:\test2
xcopy C:\test3
 
Misschien werkt iets als dit:

@echo off
copy nul uitvoer.bat
FOR /F %%i in (voorbeeld.txt) do echo "xcopy %%i" >> uitvoer.bat

Tijs.
 
Ok, even anders: Waarom doe je dat niet gewoon in Kladblok?...

Kopieer C:\
Klik Bewerken, Vervangen.
Plak C:\ in Zoeken naar.
Typ XCOPY C:\ in Vervangen door.
Vink desgewenst Identieke hoofdletters\kleine letters aan.
Klik Alles vervangen.

Kan je batches tot 45 kB mee verwerken.
 
@dnties weet wat deze melding veroorzaakt?
%%i niet verwacht op dit moment.

@TheKnight
De data kan elke dag anders zijn ook de regels kunnen elke dag anders zijn of niet aanwezig zijn ;)
 
@lccookie1992: doet bij mij precies wat je vraagt, met enige aanpassing het weghalen van de "-tekens bij xcopy %%i, omdat dat leidde tot "xcopy C:\test"
Wat jij waarschijnlijk fout doet is dat je mijn commando's in een .bat bestand hebt gezet en dat .bat bestand uitvoer.bat hebt genoemd!
Ikzelf hebt 'm in test.bat gezet. Eventueel kan ik in hetzelfde test.bat bestand ook uitvoer.bat aanroepen, na het for statement.

@echo off
copy nul uitvoer.bat
for /f %%i in (voorbeeld.txt) do echo xcopy %%i >> uitvoer.bat

Tijs.
 
Laatst bewerkt:
Bij mij lukt het helaas niet :(
Ik doe het volgende

Ik heb mijn bestand staan op locatie c:\users\gebruikersnaam\lijsteinde.txt
als ik cmd start, dan staat deze op locatie c:\users\gebruikersnaam
als ik in cmd invoer
copy nul uitvoer.bat
Enter
Krijg ik de melding
1 bestand<en> gekopieerd.

Ik heb je script op mijn situatie aangepast door onderstaand script

for /f %%i in (lijsteinde.txt) do echo xcopy %%i >> uitvoer.bat

en krijg de melding :(

%%i niet verwacht op dit moment.
 
Laatst bewerkt:
Wat ben jij aan het doen? Die commando's zoals ik ze aangaf horen in een .bat bestand, niet los uitgevoerd te worden op de cmd-prompt!

Maar áls je het zo nodig handmatig wilt uitvoeren op de CMD-prompt, dan moet je niet %%i gebruiken maar %i
Dus het wordt op de CMD-prompt:
for /f %i in (lijsteinde.txt) do echo xcopy %i >> uitvoer.bat

Tijs.
 
ow wacht daar is mijn probleem als ik het niet doe in cmd maar een in bat file dan werkt het :D thx foutje aan mijn kant ;)
 
uiteindelijk word alles in 1 batch script ge dumpt dus geen probleem ;) bedankt voor de hulp
 
Ik ben nog 1 dingentje tegengekomen weet niet of je daar toevallig ook mee kan helpen ;)
het probleem is dit.

In uitvoer.bat staat het volgende
xcopy C:\Users\lccookie1992\Desktop\nieuwe
xcopy C:\Users\lccookie1992\Desktop\nieuwe
xcopy C:\Users\lccookie1992\Desktop\nieuwe

Dit moet onderstaand zijn

C:\Users\lccookie1992\Desktop\nieuwe muziek leuke muziek\cd\Nayer Feat. Pitbull & Mohombi - Suavemente.mp3
C:\Users\lccookie1992\Desktop\nieuwe muziek leuke muziek\cd\Inna - Crazy Sexy Wild.mp3
C:\Users\lccookie1992\Desktop\nieuwe muziek leuke muziek\cd\Owl City & Carly Rae Jepsen - Good Time.mp3

Is er ook een manier om dit voor elkaar te krijgen ? bijvoorbeeld door het scriptje het tussen " " te zetten
 
Probeer het volgende (inderdaad met "-tekens eromheen):
for /f %%i in (lijsteinde.txt) do echo xcopy "%%i" >> uitvoer.bat
Overigens zou je vlgs. mij het ook meteen kunnen laten uitvoeren ook, zonder tussenbestand, dus het wordt dan:
for /f %%i in (lijsteinde.txt) do xcopy "%%i"

Tijs.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan