Batch How-to: robocopy /MOVE

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
halfmelone
Junior Member
Junior Member
Posts: 12
Joined: 2013-05-24, 06:56 UTC

Batch How-to: robocopy /MOVE

Post by *halfmelone »

Moin zusammen,

ich habe ein Verzeichnis in dem ich eine Datei zippe.
Diese Datei möchte ich dann danach im gleichen Verzeichnis in den Ordner "zip_files" mit robocopy /S /E /MOVE verschieben.

In meiner batch steht folgendes:

SET source=%1
SET target=zip_files
SET file=%1%2.7z
"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=64 -md=32m -ms=on %2.7z
robocopy source target file /S /E /MOVE

Als Übergabeparameter im TC Button steht:

%P %N

Aber, dass funktioniert nicht.
Hat hier jemand ne Idee wo ich da den Fehler mache?
User avatar
Stefan2
Power Member
Power Member
Posts: 4281
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Post by *Stefan2 »

Schnellschuss:

eventuell

robocopy "%source%" "%target%" "%file%" /S /E /MOVE



- - -

Ohh, und

%P%N

nicht
%P %N




 
halfmelone
Junior Member
Junior Member
Posts: 12
Joined: 2013-05-24, 06:56 UTC

Post by *halfmelone »

ZIP wird erstellt, aber dann nicht verschoben ...
User avatar
Stefan2
Power Member
Power Member
Posts: 4281
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Post by *Stefan2 »

Dann teste und schau wo der Fehler liegt...

Eventuell hat TC mit %P%N bereits den Pfad in Anführungszeichen gesetzt und mein "%source%" verdoppelt diese nun.

Dann verwende
SET source=%~1

anstelle von
SET source=%1
(Siehe DOS-Box:   C:\>for /?   )

Code: Select all

@ECHO OFF
CD %~dp0
SET source=%1
SET target=zip_files
SET file=%1\%2.7z

ECHO Working dir: %CD%
ECHO Variable source: "%source%"
ECHO Variable target: "%target%" 
ECHO Variable file: "%file%"


"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=64 -md=32m -ms=on %2.7z

REM wait 20 seconds to finish zipping process:
TIMEOUT /T 20

robocopy "%source%" "%target%" "%file%" /S /E /MOVE 

PAUSE

- - -

Und...
halfmelone wrote:SET source=%1
SET target=zip_files
SET file=%1%2.7z
"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=64 -md=32m -ms=on %2.7z
robocopy source target file /S /E /MOVE
sollte
SET file=%1%2.7z

nicht besser
SET file=%1\%2.7z

sein?

Oder eher
SET file=%2.7z
da "source" bei robocopy ja eh bereits angegeben ist?


 
Post Reply