Zum Inhalt springen

Frage zu Batch-Datei und logischer Verknüpfung


daTom

Empfohlene Beiträge

Hallo,

gibt es eine Möglichkeit in Batch-Dateien ein logisches UND einzusetzen?

Ich habe hier folgendes Beispiel und bekomme es einfach nicht hin


@echo off


set test1=3

set test2=6


IF "%test1%"=="3" && IF "%test2%"=="6" goto g1

goto g2


:g1

echo Werte stimmen

:g2

echo Werte stimmen nicht

Die "&&" sind ja falsch, gibt es dafür bei Batch-Dateien eine andere Ausdrucksweise?

Ich finde im Internet leider keine Tutorials die das erklären.

Danke schon mal

Gruß

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

danke für den Tip, war genau das was ich gesucht habe.

Ich hoffe du kannst mir auch bei meiner nächsten Frage etwas helfen.

Folgendes:

Ich muss hier ein Setup bauen. In manchen Ini-Dateien gibt es Verweise auf XML-Dateien. Da die Applikation in verschiedenen Ländern eingesetzt wird kann ich den Pfad nicht direkt eintragen (z.B. wegen c:\programme und c:\program files). Das Setup Programm bietet daher die Möglichkeit in solchen Ini-Files eine Art Tag zu setzen, dass dann beim Installieren mit dem Wert überschrieben wird.

Das sieht im Moment folgendermaßen aus: (kleiner Ausschnitt)

[script Extensions]

Test1 Specific Scripts=file://[installDir]/AppName/workspace/test1.xml

Test2 Specific Scripts=file://[installDir]/AppName/workspace/test2.xml

Das funktioniert auch eigentlich wunderbar, aber [installDir] wird mit c:\Programme oder c:\Program Files ersetzt. Das lässt sich leider auch nicht verändern.

Jetzt habe ich mir überlegt beim Installieren eine kleine Batch laufen zu lassen die mir die \ für die beiden Einträge mit / ersetzt.

Allerdings habe ich bislang überhaupt keinen Ansatz gefunden.

Habt ihr da ne Idee oder nen Ansatz für mich

Danke schonmal und Gruß

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

das deckt aber leider nicht die Möglichkeit ab, dass der Benutzer bei der Installation zum Beispiel c:\programme\a oder c:\programme\b angibt.

Ich bin auf dieses [installDir] angewiesen, da ich ja auch den o.g. Fall abdecken muss

edit:

Ich hab was gefunden, allerdings bearbeitet das Skript dann die ganze Datei und nicht die beiden Zeilen.

Leider kann ich das in der Form noch nicht nutzen, da wirklich nur diese beiden Zeilen bearbeitet werden müssen.

@echo off & setlocal enabledelayedexpansion

set "Datei=test.ini"

set "Von=\"

set "Nach=/"

set "t=text.tmp"

if exist "%t%" del "%t%"

for /f "usebackq delims=" %%i in ("%Datei%") do set "Line=%%i" & set Line=!Line:%Von%=%Nach%! & echo !Line!>>"%t%"

move /y "%t%" "%Datei%"

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...