jeg ved ikke lige, om ren kan have /s har valgt xcopy, da den er mere effektiv ved mange/store filer (copy tager en fil ad gangen, xcopy tager alt, som den har ram til pr gang)
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f %%i in ('dir %src%\c*.* /ad /b') do ( xcopy %src%\%%i\*.* %dest%\%%i /s /i ren %dest%\%%i t!%%i:~1! )
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f %%i in ('dir %src%\c*.* /ad /b') do ( xcopy %src%\%%i\*.* %dest%\%%i /s /i set dname=%%i ren %dest%\%%i t!dname:~1! )
Synes godt om
1 synes godt om dette
Slettet bruger
26. marts 2019 - 09:06#12
xcopy C:\a\ dmc\C*.* C:\b\dmc\T*.*
Jeg har lige testet i en windows 10 commando prompt, både med copy og xcopy. Det virker fint.
/s så tager den under biblioteker med
@Claes i #2, jeg mener du glemmer \ *.* i dit target under kopieringen, så vidt jeg kan se kommer du til at kopiere til en fil der hedder dmc i biblioteket b. Det kan være jeg tager fejl / husker forkert
hvis du vil kopiere alle filer fra et bibliotek til et andet skal den hedde: copy c:\test\*.* c:\hest\*.*
RogerWilco Er det muligt at flytte istedet for at kopiere ?
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f %%i in ('dir %src%\c*.* /ad /b') do ( xcopy %src%\%%i\*.* %dest%\%%i /s /i set dname=%%i ren %dest%\%%i t!dname:~1! )
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f %%i in ('dir %src%\c*.* /ad /b') do ( move %src%\%%i %dest% set dname=%%i ren %dest%\%%i t!dname:~1! )
Der sker noget underligt der er 1 mappe den tager filerne ud af hver gang jeg bruger move command der er 5 andre mapper som bliver flyttet som de skal....
Kan man bare lave en command så man sletter de mapper der starter med C ? så kan jeg bare bruge xcopy det virker hver gang :-)
Det lyder underligt, hvis sådan bare lige udelader en mappe. Har du den pågældende mappe åben i stifinderen (eller andre programmer), eller er der underlige bogstaver (æøå eller udenlandske tilsvarende) i mappe- eller filnavne?
Hvis man skal bruge xcopy med efterfølgende sletning af mappe, kunne det se således ud:
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f %%i in ('dir %src%\c*.* /ad /b') do ( xcopy %src%\%%i\*.* %dest%\%%i /s /i set dname=%%i ren %dest%\%%i t!dname:~1! rd %src%\%%i /s /q )
Synes godt om
2 synes godt om dette
Slettet bruger
28. marts 2019 - 10:08#24
Godt I har fundet en løsning :)
Og jeg er helt enig i at move er bedre at bruge, hvis de gamle biblioteker alligevel skal slettes.
Jeg har leget lidt med xcopy, men har heller ikke fået det til at virker på biblioteker :(
RogerWilco Jeg ville bare høre dig om det er besværligt at få den til at kunne gøre det samme med mapper med mellemrum ? Eks.: C: \ a \ dmc \ C24117 Hans til C: \ b \ dmc \ T24117 Hans
Ups, jeg glemte vist at besvare denne - prøv nedenstående:
@echo off set src=c:\a\dmc set dest=c:\b\dmc setlocal enabledelayedexpansion for /f "delims=§" %%i in ('dir "%src%\c*.*" /ad /b') do ( xcopy "%src%\%%i\*.*" "%dest%\%%i" /s /i set dname=%%i ren "%dest%\%%i" "t!dname:~1!" rd "%src%\%%i" /s /q )
Hej jeg prøvede dette, men virker ikke ? @echo off set src=c:\a\"dmc 2" set dest=c:\b\"dmc 2" setlocal enabledelayedexpansion for /f "delims=§" %%i in ('dir "%src%\c*.*" /ad /b') do ( xcopy "%src%\%%i\*.*" "%dest%\%%i" /s /i set dname=%%i ren "%dest%\%%i" "T!dname:~1!" rd "%src%\%%i" /s /q )
Når man normalt angiver mappenavne med mellemrum, skal det være hele stien der er omfattet af anførselstegn, f.eks.: dir "c:\a\dmc 2"
I dit tilfælde skal der dog ikke bruges anførselstegn i set-kommandoerne, da de allerede er med i kommandoerne med selve fil-tilgangen - dvs. dir/xcopy/ren/rd.
Så du skal bare skrive set src=c:\a\dmc 2 set dest=c:\b\dmc 2
Synes godt om
1 synes godt om dette
Ny brugerNybegynder
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.