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
GELÖST

Bei Abfrage einer Variablen Absturz des Batchs

Frage Entwicklung Batch & Shell

Mitglied: Traxtormer

Traxtormer (Level 1) - Jetzt verbinden

11.08.2010, aktualisiert 09:18 Uhr, 3196 Aufrufe, 4 Kommentare

Hallo Leute,

dieses Batch soll alle Dateien (ohne Ausnahme) von der WinXP-CD in einen lokalen Ordner kopieren. Natürlich soll das Batch nicht einfach blind weiter laufen oder abbrechen, wenn keine CD gefunden wird.

bin leider nicht so batch gewandt und wollte 1.) wissen, ob man an diesem Code was verbessern (abkürzen, vereinfachen) kann, oder ob der so halbwegs ok ist.
2.) Wenn ich bei der unteren Abfrage (if %WIN%.....) eine Leertaste eingebe, stürzt mir das ganze Batch ab.

(nircmd ist ein kleines Programm mit ein paar kleinen Tools, wie z.B.: CD-fach öffnen,...)

Bitte helft mir in der Sache.

01.
echo Copy WinXP-Files! 
02.
echo Copy WinXP-Files! >> C:\Log.txt 
03.
 
04.
if exist "C:\INSTALL\i386" goto available_win 
05.
nircmd.exe cdrom open D:  
06.
:beg_win 
07.
echo Please insert the Windows XP Prof. Disc and press a key! 
08.
 
09.
If not Exist "D:\i386" goto sta_win 
10.
xcopy "D:\" "C:\INSTALL\i386\" /E /V /H 
11.
if errorlevel 0 goto success_win else goto error_win 
12.
 
13.
:error_win 
14.
echo Copying of the XP files was not successful! %date% %time% >> C:\Log.txt 
15.
echo Copying of the XP files was not successful! 
16.
goto end_win 
17.
 
18.
:available_win 
19.
echo Copying of the Windows files was omitted because the listing already exists! %date% %time% >> C:\Log.txt 
20.
echo Copying of the Windows files was omitted because the listing already exists! 
21.
goto end_win 
22.
 
23.
:sta_win 
24.
echo Please put in the right Windows XP Prof. Disc! %date% %time% >> C:\Log.txt 
25.
echo Please put in the right Windows XP Prof. Disc! 
26.
set /p WIN=If you want to repeat the copying, press "y", if you want to continue without copying the files press "n" and "Enter"! 
27.
If %WIN%==n goto error_win 
28.
If %WIN%==y goto beg_win 
29.
echo The key you typed in was wrong! Please enter a correct one! 
30.
goto sta_win 
31.
 
32.
 
33.
:success_win  
34.
echo Copying of the XP files was successful! %date% %time% >> C:\Log.txt 
35.
echo Copying of the XP files was successful! 
36.
 
37.
:end_win
.....
.
.
.
.
.


Danke im Voraus.

LG
Mitglied: t-roc
11.08.2010 um 08:35 Uhr
Hi, kann es sein das es daran liegt, dass du der Variable %WIN% schon etwas zuweist?
Versuch es mal so:

ECHO If you want to repeat the copying, press "y", if you want to continue without copying the files press "n" and "Enter"!
set /p WIN=
If %WIN%==n (goto error_win)
If %WIN%==y (goto beg_win)

Is aber auch nur eine Vermutung.

Jedenfals hab ich es so in einer Batch von mir gemacht, die is aber auch schon ein paar Jahre alt.

Gruß
Tobias
Bitte warten ..
Mitglied: Traxtormer
11.08.2010 um 09:08 Uhr
Zuerst mal danke für deine Antwort.

Nein leider. Genau das selbe.

Hmm...habe echt keine Idee wie man das Problem umgehen kann.

SG
Bitte warten ..
Mitglied: Biber
11.08.2010 um 09:42 Uhr
Moin traxformer,

falls die Variable %win% leer ist würde die Anweisung
If %WIN%==n (goto error_win)
...doch aufgelöst zur Prüfung
If  ==n (goto error_win)
--> und ergibt einen Syntaxfehler.
Besser ist:
If  /i "%WIN%"=="y"  goto beg_win 
If  /i "%WIN%"=="n"  goto error_win
...was syntaktisch korrekt aufgelöst wird zu

If  /i ""=="y"  goto beg_win 
If  /i ""=="n"  goto error_win
Der zusätzliche Schalter "/i" ist Spielerei/nicht wesentlich für den Syntaxfehler.
Der sagt nur: Unterscheide nicht zwischen Klein- und Grossschreibung.

Grüße
Biber
Bitte warten ..
Mitglied: Traxtormer
11.08.2010 um 10:28 Uhr
Dankeschön für die schnelle Hilfe.

PS: Ich finde dieses Board einfach super.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Datenbanken
gelöst Row Number bei einer Abfrage sinnvoll einsetzen (1)

Frage von Aximand zum Thema Datenbanken ...

Batch & Shell
gelöst Batch Abfrage Vergleiche mit Variable goto (4)

Frage von Zunaras zum Thema Batch & Shell ...

Batch & Shell
Abfrage ob Datei von heute da ist (15)

Frage von pbelcl zum Thema Batch & Shell ...

Batch & Shell
gelöst Findstr - code für schwieriger Abfrage gesucht (9)

Frage von reissaus73 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (13)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...