Batch-Dateien. IF-Aussagen?

8

Ich habe eine Batch-Datei, die den Befehl "attrib + h" auf eine Datei anwenden und dann in eine txt-Datei ausgeben und den Inhalt auf dem Bildschirm anzeigen muss. Dies sollte auch geschehen, wenn die Datei nicht bereitgestellt wurde oder nicht gefunden werden kann. Ich habe das bisher, kann es aber nicht zum Laufen bringen:

%Vor%

Dies ist mein erster Computerkurs und jede Hilfe wird sehr geschätzt. Danke.

    
SmkErrl 11.03.2014, 19:07
quelle

3 Antworten

12

Es gibt einige Probleme mit diesem Code. Erstens erfordern Batch-Dateien eine spezifische Syntax mit ihren IF / ELSE -Anweisungen.

So ähnlich

%Vor%

funktioniert richtig, während etwas wie dieses

%Vor%

nicht. Die Klammern begrenzen den Block, sodass Ihr IF -Befehl alles zwischen ( und ) ausführt, wenn er als wahr ausgewertet wird.

Zweitens brauchen Sie keine ELSE -Anweisungen. Da Sie GOTO -Befehle direkt vor Ihren ELSE -Befehlen verwenden, erreichen Sie niemals den zweiten GOTO -Befehl, wenn der erste IF als wahr ausgewertet wird.

Schließlich ist mit dem Code, den Sie gerade anzeigen, das :TOP -Tag, das Sie haben, unnötig.

Nach all dem solltest du etwas zurücklassen, das so aussieht:

%Vor%     
Nate Mara 11.03.2014 19:35
quelle
2

Nur ein paar Probleme mit der Klammer- und Flusslogik

%Vor%     
MC ND 11.03.2014 19:56
quelle
0

Ich bin nicht vertraut mit Batch, aber es sieht aus wie Ihre If-Anweisung falsch formatiert ist.

%Vor%     
Justin 11.03.2014 19:25
quelle