Avatar billede CodingJoe Nybegynder
15. november 2010 - 19:55 Der er 16 kommentarer og
1 løsning

XCOPY kommando kopiering af filer fra en relativ sti til en absolut lokation

Hejsa

XCOPY kommandoer:

Har søgt på nettet, men tror ikke det kan lade sig gøre.

Sagen er at jeg har en mappe med et ganske enkelt bat script og en mappe jeg vil kopiere ned i fx: c:\destination\

Mit bat script skal sådan se kopiere en mappe til c:\destination\. Problemet er at jeg gerne fra mit bat script vil angive at source mappen ligger på niveau med scriptet og skal kopieres til c:\destination\. Dvs. jeg vil angive en relativ sti fra scriptet og få kopieret til en absolut lokation.

Med dette kan jeg sende mine ting til en person, og sige at han bare skal køre bat scriptet, og tingene vil blive kopiere til c:\destination\ fra uanset, hvor på sin pc han står med og kører scriptet fra...

Kan det lade sig gøre?
Avatar billede tjens Nybegynder
15. november 2010 - 20:25 #1
Jeg tror ikke, jeg forstår hvad du mener, for jeg synes xcopy virker som du ønsker, når der ikke er angivet en fra mappe:

xcopy    *.*  c:\destination
Avatar billede CodingJoe Nybegynder
15. november 2010 - 21:06 #2
Ok et eksempel:

Jeg har sendt min ven en zip fil, og beder ham om at pakke den ud et vilkårligt sted.

Han pakker zip filen ud på sin desktop. I zipfilen ser han en mappe og et scritp. Jeg beder ham om at dobbeltklikke på script filen. Scriptet skal kopiere mappen ned i c:\destination. Da jeg ikke ved hvorfra han står henne skal jeg blot i xcopy kommandoen angive xcopy "den mappe ved siden af script filen" c:\destination

Har ikke prøvet din kommando, men det kan være den gør tricket...
Avatar billede CodingJoe Nybegynder
15. november 2010 - 21:20 #3
Jeg må indrømme, at være varsom med at prøve ting foreslået herinde fra...din kommando kopierede alt muligt crap ned i min destinations mappe...den kopierede dll'er, midi filer, wav filer...blev nødt til at afbryde, da den bare fortsatte derudaf...bagefter skulle jeg ind og slette 394 mb filer :(
Avatar billede tjens Nybegynder
15. november 2010 - 21:41 #4
#2 OK, hvis der er en folder, som ligger i samme folder som scriptet kan du bruge punktum som startfolder:

xcopy  .\udpakningsfolder\*.*  c:\destination
Avatar billede tjens Nybegynder
15. november 2010 - 21:44 #5
#3 LOL: ja skrivebordet eller c:\Windows er nok en dårlig folder at kopiere fra.
Avatar billede CodingJoe Nybegynder
15. november 2010 - 21:51 #6
Hmmm synes ikke det virker...jeg skal kopiere en mappe og prøver følgende:

XCOPY .\DEPLOYMENT\MinSourceMappe c:\destination

mit script ligger side om side med 'MinSourceMappe'
Avatar billede CodingJoe Nybegynder
15. november 2010 - 21:53 #7
Nej, men scriptet skal derfor kunne tage en 'den-mappe-der-ligger-ved-side-af-uanset-lokation' og ikke kopiere alt fra desktoppens indhold ned i min c:\destination
Avatar billede tjens Nybegynder
15. november 2010 - 22:03 #8
#6 fjern DEPLOYMENT\ da punktummet i sig selv peger på denne.
Avatar billede CodingJoe Nybegynder
15. november 2010 - 22:13 #9
Har jeg skam også prøvet...
Avatar billede CodingJoe Nybegynder
15. november 2010 - 22:14 #10
Filen MinSourceMappe blev ikke fundet <-
Avatar billede tjens Nybegynder
15. november 2010 - 22:34 #11
Hov, så ikke at du havde fjernet \*.* fra eksemplet i #4. Prøv:

xcopy  .\MinSourceMappe\*.*  c:\destination
Avatar billede CodingJoe Nybegynder
15. november 2010 - 22:40 #12
Filen *.* blev ikke fundet. <-
Avatar billede CodingJoe Nybegynder
15. november 2010 - 22:41 #13
XCOPY .\MinSourceMappe\*.*  C:\destination /K /R /S /I /Y
15. november 2010 - 23:05 #14
Lige en hurtig:

Jeg tror du skal kigge efter et eller andet med
%0 som argument i *.BAT eller *.CMD kommandofilen

%1 er normalt første variable efter kommandoen
%2 er normalt anden variable efter kommandoen
%3 er normalt tredie variable efter kommandoen
...
Derfor mener jeg at %0 er den fulde sti+filnavn på kommandoen

---

Mere har jeg ikke i hovedet lige nu; men bare som 'inspiration' ???

---

Eller blander jeg sammen med noget Unix 'halløj' *S* ?
Avatar billede CodingJoe Nybegynder
16. november 2010 - 09:09 #15
Hmmm det kan godt være det ikke kan lade sig gøre...kender ikke så meget til unix, men sjovt man ikke kan angive en relativ sti i forhold til scriptet. Det betyder at jeg bliver nødt til at sige til vedkommende at pakke filen ud et specifik sted, som jeg så kan angive som source i XCOPY kommandoen.
Avatar billede CodingJoe Nybegynder
16. november 2010 - 09:34 #16
Her er løsningen:

XCOPY .\MinSourceMappe  C:\destination /K /R /S /I /Y

tjens...smid du bare et svar ind...du pejlede mig hen med '.', men *.* eller * skulle ikke angives her..
Avatar billede tjens Nybegynder
16. november 2010 - 19:41 #17
OK: Svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester