Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batch-Variable bei Shift

Frage Entwicklung Batch & Shell

Mitglied: KlausInD

KlausInD (Level 1) - Jetzt verbinden

26.08.2009, aktualisiert 19:08 Uhr, 3499 Aufrufe, 2 Kommentare

Verehrte Dossiers und Stapler!

Ich stecke fest und bitte Euch um Hilfe.
Mit dem folgenden Befehl will ich Dateikopien von allen Partitionen (evtl außer C auf eine externe Festplatte speichern.

SET Log=ZwiBack.Log
SET Param=/C /R /E /H /K /Y /Q /EXCLUDE:F:\Zwi\Excludat.txt

:Schleife
SET Lw=%1
IF "%1"=="" GOTO Ende
ECHO Jetzt: Kopieren aller Dateien von Lw %Lw%

XCOPY %Lw%:\*.* N:\ZwiBack\%Lw%\ %Param% >>%Log%

SHIFT
GOTO Schleife

:Ende

(In diesem Zusammenhang unwichtige Befehle habe ich weggelassen.)

Die Variable Lw soll bei jedem Schleifendurchlauf durch einen Laufwerksbuchstaben ersetzt werden,
als da z.B. wären: F G H I J K. Ich glaube mich zu erinnern, daß ich vor etwa 25 Jahren die Variablen-Parameter
(Laufwerksbuchstaben) in eine Text- oder Bat-Datei geschrieben habe, damit ich bei öfter einmal vorkommenden
Änderungen in der Laufwerksstruktur nicht jedes Mal in meiner Kopierdatei an vielen Stellen ändern muß. Das wäre
zu fehleranfällig. Aber wie habe ich das gemacht? Und wie ist die genaue Syntax? Und was mache ich dann
mit der Datei? Wohin kommen dann die Variablen, damit sie in meiner Kopierdatei (siehe oben) "geshiftet" werden?
Leider habe
ich keine Unterlagen mehr dazu, und meine Erinnerung ist nur vage.

Wie hätte ich damals beim Ausmisten ahnen können, daß ich im achtzigsten Jahrzehnt noch einmal Lust oder
Notwendigkeit verspüren würde, unter die Batcher zu gehen?!
Bitte keine Verweise auf MS-Anleitungen oder abstrakte Erklärungen, die kapiere ich nicht mehr. Ich bitte um praktische Hilfe,
wenn es geht, durch Vorkupfern zum Abkupfern. Danke einstweilen.

KH in D
Mitglied: 81825
26.08.2009 um 19:31 Uhr
Hi,

warum so kompliziert? Der FOR-Befehl enthält eine Aufzählung der zu sichernden Laufwerke, das SHIFT kannst du dir damit sparen.

01.
SET Log=ZwiBack.Log 
02.
SET Param=/C /R /E /H /K /Y /Q  
03.
Rem /EXCLUDE:F:\Zwi\Excludat.txt geht nicht, falsche Syntax. Hilfe mit XCOPY /? 
04.
 
05.
for %%i in (F H I J K) do XCOPY %%i:\*.* N:\ZwiBack\%%i\ %Param% >>%Log%

Wenn du unbedingt mit SHIFT arbeiten möchtest, musst du die Laufwerke als Parameter an die Batch übergeben.
Der EXCLUDE-Parameter erwartet Objekte, keine einzulesende Dateiliste.
Bitte warten ..
Mitglied: pieh-ejdsch
28.08.2009 um 02:47 Uhr
Hallo KlausInD,

Das mit der Exclude Funktioniert bei mir.
mit der Variable COPYCMD kannst Du das Verhalten von COPY XCOPY und MOVE Voreinstellen und brauchst die Variable nicht in den Befehl zu schreiben.

Diese Version wird Dir aber nur Deine ZwiBack.Log Vollknallen.
Wenns dann noch extra kopieren soll dann die XCOPY zeile ohne
>>%Log%
direkt unter die erste Xcopy-Zeile setzen also noch vor dem SHIFT

01.
@echo off 
02.
SET Log=ZwiBack.Log 
03.
:: copycmd beeinflusst das Verhalten vom xcopy Befehl ohne die Variable in der Befehlszeile nochmals anzugeben 
04.
SET COPYCMD=/C /R /E /H /K /Y /Q /EXCLUDE:F:\Zwi\Excludat.txt 
05.
:: Alles was hinter dem Name der Sprungmarke zusammenhängend geschrieben ist 
06.
:: oder mit Gänsefüsschen Umschlossen wird als EIN Parameter Übergeben. Also sind in Deinem Fall die Laufwerke. 
07.
call :Schleife F G H I J K 
08.
goto :Ende 
09.
:Schleife 
10.
IF "%1"=="" GOTO :eof 
11.
PushD %1:\ 
12.
ECHO Jetzt: Kopieren aller Dateien von Lw %1 
13.
XCOPY *.* N:\ZwiBack\%1\ >>%Log% 
14.
SHIFT 
15.
PopD 
16.
GOTO Schleife 
17.
:Ende 
18.
set COPYCMD=&:: Wenn Die Batch hier noch Weitergeht
Gruß Phil
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst In einer Batch variable die Datei extension ermitteln ? (4)

Frage von Kriegstreiber zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Variable setzten mit Leerzeichen (3)

Frage von Marlon1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (1)

Frage von Zendara zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (16)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (15)

Frage von Static zum Thema CMS ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...

RedHat, CentOS, Fedora
Fedora, RedHat, Centos: DNS-Search Domain setzen (13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...