Wer kennt sich noch mit XCOPY aus?

  • Hier ein Auszug aus einer funktionierenden Batch Datei die ich seit langem im Einsatz habe:


    XCOPY D:\SQL\Daten D:\SQLBACKUP\Daten /S /E /C /H /O /R /Y /D /V


    Nun möchte ich aber kein Verzeichnis mehr kopieren sondern nur eine bestimmte Datei, mit dem festen Namen Beispiel.xls. Das müsste dann ja in etwa so aussehen:



    XCOPY D:\SQL\Daten\Beispiel.xls D:\SQLBACKUP\Daten\Beispiel.xls /S /E /C /H /O /R /Y /D /V



    Der neue Dateiname soll beim kopieren immer durch das aktuelle Datum ergänzt werden und anschließend per FTP übertragen werden. Dafür gibts dann folgendes Skript:


    set jahr=%date:~-4%
    set monat=%date:~-7,2%
    set tag=%date:~-10,2%


    echo off


    echo open ftp.server.de> upload.ftp
    echo user>> upload.ftp
    echo pass>> upload.ftp
    echo binary>> upload.ftp
    echo hash>> upload.ftp
    echo put ..\Beispiel.xls Beispiel%tag%%monat%%jahr%.xls>> upload.ftp
    echo quit>> upload.ftp


    ftp.exe -v -s:upload.ftp


    Zum kopieren von ganzen Verzeichnissen hat das bis jetzt wunderbar funktioniert, aber leider bei einzelnen Dateien nicht. Es erscheint von XCOPY immer die Abfrage, ob das Ziel eine Datei oder ein Verzeichnis ist. Was muss ich hier ändern, kennt sich damit noch Jemand von euch aus? Die Batch Datei soll unter Win XP laufen. Hoffe ihr könnt mir weiterhelfen.

  • Du willst doch nur die eine Datei kopieren - warum dann die ganze Parameter fuer Verzeichnisse, Rekursion etc.?


    xcopy <quelle> <ziel> /y /v /o


    sollte genuegen, ggf. beim Ziel nur das Verzeichnis angeben, wenn der Name der Datei gleich bleiben soll, also


    xcopy d:\sql\daten\beispiel.xls d:\sqlbackup\daten\ /y /v /o

  • Zitat

    Original geschrieben von harlekyn
    ggf. beim Ziel nur das Verzeichnis angeben, wenn der Name der Datei gleich bleiben soll, also


    xcopy d:\sql\daten\beispiel.xls d:\sqlbackup\daten\ /y /v /o


    Dann wird es das gewesen sein, danke. Werd ich gleich Morgen Früh testen.

  • Nur nicht übertreiben und zuviel tippen ;)


    copy /y <Quelldatei mit Pfad> <Zieldatei mit Pfad>

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!