WatchDirectory Forum
http://www.watchdirectory.net/cgi-bin/yabb25/YaBB.pl
watchDirectory forums >> German >> verschieben nach regeln ...
http://www.watchdirectory.net/cgi-bin/yabb25/YaBB.pl?num=1205324521

Message started by RaNgErID on Mar 12th, 2008 at 2:22pm

Title: verschieben nach regeln ...
Post by RaNgErID on Mar 12th, 2008 at 2:22pm
Hallo Watchdirectory Team

erstmal ein Großes Lob an euch, für das doch sehr nützliche & hilfreiche Tool.

also zu meiner Frage

ich möchte gern eine Regel erstellen, bei der wenn es zu einer Übereinstimmung einer Datei kommt, den gesamten Ordner, in welchem sich die Übereinstimmende Datei befindet , verschiebt nicht nur die Datei.

ist dies Möglich ?

sprich

in Ordner c:\test\test1

befindet sich die Datei mit dem namen z.B. "CRC-OK"
dann soll er den Ordner "test1" wo sich die Datei "CRC-OK" befindet in ein anderen Ordner verschieben.

ich hoffe ich konnte es verständlich darstellen ^^

mfG RaNgErID

Title: Re: verschieben nach regeln ...
Post by Dirk on Mar 12th, 2008 at 3:36pm
Hallo RaNgErID,

danke für das Lob!

Du kannst folgendes Script und das Plugin "beliebige existierende .bat-Datei ausführen" dafür verwenden:

[code]
@echo off
SET TARGETDIR=C:\Test

rem make sure the TARGETDIR exists
MD "%TARGETDIR%"
rem make sure our current directory is not the same as the directory being moved
C:
CD \
rem move the complete directory (first remove the trailing backslash from WD_FILE_D)
SET WD_FILE_D=%WD_FILE_D:~0,-1%
MOVE /Y "%WD_FILE_D%" "%TARGETDIR%"[/code]

In der Zeile SET TARGETDIR=C:\Test wird das Ziel definiert. Dort kannst Du auch Variable verwenden, siehe hier:
http://de.watchdirectory.net/wdhelp/plugins/wdopAutoRunBatEnv_deu.html

Achte darauf, dass Du nicht den überwachten Ordner selbst verschiebst, sonst kann die Aufgabe nicht weiter ausgeführt werden. Verwende also Unterorder im überwachten Verzeichnis.
Jetzt setzt Du in der Aufgabe noch einen Filter, dass Ereignisse nur ausgelöst werden, wenn die Datei "CRC-OK" erkannt wurde (im Reiter "Ereignisse filtern")

Das Script funktioniert nur, wenn es aus watchDirectory heraus aufgerufen wird. Per doppelklick funktioniert es nicht.

Title: Re: verschieben nach regeln ...
Post by RaNgErID on Mar 12th, 2008 at 3:57pm
WOW ....


Danke erst mal für die sehr schnelle Antwort.

werde ich gleich mal ausprobieren.


Melde mich wieder



mfG RaNgErID

Title: Re: verschieben nach regeln ...
Post by RaNgErID on Mar 12th, 2008 at 5:33pm
hmm irgendwie funktioniert das nicht

hier meine BAT


Code (]@echo off
SET TARGETDIR=E:\ftppub\%WD_RELDIR%
rem make sure the TARGETDIR exists
MD "%TARGETDIR%"
rem make sure our current directory is not the same as the directory being moved
C:
CD \
rem move the complete directory (first remove the trailing backslash from WD_FILE_D)
SET WD_FILE_D=%WD_FILE_D:~0,-1%
MOVE /Y "%WD_FILE_D%" "%TARGETDIR%" [/code):

also ich möchte

z.B.

c:\FTP\     =    fester Ordner der bleibt

c:\FTP\Incoming\test1\"CRC-OK"   <- hier die übereinstimmende Datei,   soll hierher mit ornder verschoben werden "E:\ftppub\archiv\test1\samt inhalt"


bloß irgendwie geht das nicht , kommt immer zugriff verweigert warum auch immer

ich nutze OS: WinXP Pro der ordner hatt alle rechte


ich selbst bin nicht der große "BAT" Coder hoffe sie können mir da weiter helfen.



Ok habs hinbekommen

[code]@echo off
SET TARGETDIR=E:\ftppub\%WD_RELDIR%
rem make sure the TARGETDIR exists
MD "%TARGETDIR%"
rem make sure our current directory is not the same as the directory being moved
C:
CD \
rem move the complete directory (first remove the trailing backslash from WD_FILE_D)
SET WD_FILE_D=%WD_FILE_D:~0,-1%
xcopy /Y /S "%WD_FILE_D%" "%TARGETDIR%"
rd /S /Q "%WD_FILE_D%"



Danke nochmal

bei move kommt immer Zugriff verweigert ...




mfG RaNgErID

WatchDirectory Forum » Powered by YaBB 2.5.2!
YaBB Forum Software © 2000-2017. All Rights Reserved.