Ich versuche eine Batch-Datei zu schreiben, die hauptsächlich zum Kopieren von Zielen verwendet wird. Jetzt möchte ich es schaffen, wo andere Benutzer es verwenden können, ohne die Verzeichnisse und Ziele bearbeiten zu müssen. Gibt es eine Möglichkeit für mich, die Batchdatei an die Stelle zu schreiben, an der sie angezeigt wird, und nach dem Verzeichnis zu fragen, das der Benutzer kopieren möchte, und nach dem Laufwerk, auf das er es kopieren möchte?
Dies ist, was ich jetzt für eine Weile benutze.
@echo off
:: variable
set backupdir="Destination"
set backupcmd=xcopy /e /h /f /y /v /c /i /r /g /k /d
echo.
echo +++ Backing Up Data +++
echo.
echo.
%backupcmd% "Directory\*.*" "%backupdir%\Data"
timeout /t 2
cls
echo Backup Complete
echo.
echo.
timeout /t 2
cls
echo.
echo +++ Now taking hidden and system attributes off of folders +++
echo.
echo.
echo.
attrib -s -h "Destination\Data"
echo.
echo.
timeout /t 3
Und gibt es eine Möglichkeit, dies mit xcopy zu verbessern?
%0 (für das aktuelle Programm oder den aktuellen Befehl) und %1-%9 für übergebene Parameter. So können Sie eine neue Batch-Datei mit der Zeile erstellen call backup.bat c:\source c:\destination und verwenden %1 zur Bezugsquelle und %2 zum Referenzziel. Keine Antwort, da keine Eingabeaufforderung verarbeitet wird. Robocopy ist auch ein großartiges Tool für Sicherungszwecke und gehört zur Standardinstallation von Windows 7.
set /?und sehen, wie man es benutztSET /P variable=[promptString]um Benutzereingaben zu erhalten.