Batch Skript läuft merkwürdig.
Hallo zusammen,
ich habe ein komisches Phänomen.
Dieses unten stehende Skript läuft in einer Citrix Umgebung
Dies dient dazu um die korrekte URL aufzurufen in einer Citrix Umgebung.
Dort soll nicht der Servername stehen sondern der CLIENTNAME
http://servername//login.php?host^=%PC%
Soweit so gut.
Wenn ich start %url% aufrufe ist der Link korrekt.
Wenn ich start iexplore %url% aufrufe hat die Variable den wert NB000 IF NB000 EQU Console set PC=SERVER1 und nicht wie vorher NB000
Was läuft da schief?
Gruß
Pixel
ich habe ein komisches Phänomen.
Dieses unten stehende Skript läuft in einer Citrix Umgebung
Dies dient dazu um die korrekte URL aufzurufen in einer Citrix Umgebung.
Dort soll nicht der Servername stehen sondern der CLIENTNAME
http://servername//login.php?host^=%PC%
Soweit so gut.
Wenn ich start %url% aufrufe ist der Link korrekt.
Wenn ich start iexplore %url% aufrufe hat die Variable den wert NB000 IF NB000 EQU Console set PC=SERVER1 und nicht wie vorher NB000
Was läuft da schief?
setlocal enabledelayedexpansion
set Clientname
IF %ERRORLEVEL% NEQ 1 goto Citrix
set PC=%COMPUTERNAME%
goto aufruf
:Citrix
IF %CLIENTNAME% NEQ Console set PC=%Clientname% IF %CLIENTNAME% EQU Console set PC=%COMPUTERNAME%
:aufruf
set URL=http://servername//login.php?host^=%PC%
start iexplore %URL%
Gruß
Pixel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 304214
Url: https://administrator.de/forum/batch-skript-laeuft-merkwuerdig-304214.html
Ausgedruckt am: 05.04.2025 um 02:04 Uhr
15 Kommentare
Neuester Kommentar
IF %CLIENTNAME% NEQ Console set PC=%Clientname% IF %CLIENTNAME% EQU Console set PC=%COMPUTERNAME%
IF %CLIENTNAME% NEQ Console set PC=%Clientname%
IF %CLIENTNAME% EQU Console set PC=%COMPUTERNAME%
Den Sinn von
set Clientname
Da wird ja kein Wert zugewiesen...
Danke, jetzt sehe ich es auch ^^ (bin wohl schon mit einem Bein im Urlaub...)
Hatte die Zeilen nur überflogen und nicht im "Zusammenhang" analysiert, sondern nach offensichtlichen Fehlern gesucht...

@echo off & setlocal enabledelayedexpansion
set Clientname && goto Citrix
set "PC=%COMPUTERNAME%"
goto aufruf
:Citrix
IF /i "%CLIENTNAME%" == "Console" (
set "PC=%COMPUTERNAME%"
) else (
set "PC=%Clientname%"
)
:aufruf
set "URL=http://servername/login.php?host^=!PC!"
start "" iexplore "%URL%"
Zitat von @129148:
> @echo off & setlocal enabledelayedexpansion
> set Clientname && goto Citrix
> set "PC=%COMPUTERNAME%"
> goto aufruf
> :Citrix
> IF /i "%CLIENTNAME%" == "Console" (
> set "PC=%COMPUTERNAME%"
> ) else (
> set "PC=%Clientname%"
> )
> :aufruf
> set "URL=http://servername/login.php?host^=!PC!"
> start "" iexplore "%URL%"
>
Erklärung? Änderung?

Sieht man doch wenn man zwei Augen im Kopf hat und beide nebeneinander legt. Das sind solche Basis-Befehle die man nachschlagen kann, da bedarf es keiner weiteren Erklärung mehr, oder sind wir hier im Kindergarten wo man den Kindchen den Löffel an den Mund führen muss ?
Zitat von @129148:
Sieht man doch wenn man zwei Augen im Kopf hat und beide nebeneinander legt. Das sind solche Basis-Befehle die man nachschlagen kann, da bedarf es keiner weiteren Erklärung mehr, oder sind wir hier im Kindergarten wo man den Kindchen den Löffel an den Mund führen muss ?
Sieht man doch wenn man zwei Augen im Kopf hat und beide nebeneinander legt. Das sind solche Basis-Befehle die man nachschlagen kann, da bedarf es keiner weiteren Erklärung mehr, oder sind wir hier im Kindergarten wo man den Kindchen den Löffel an den Mund führen muss ?
Ich hab keinen Bock, stöndig hich und runter zu scrollen, um das Skript mit dem Original zu vergleichen.
Zumindest einen Satz dazuschreiben ist ja wohl nicht zu viel verlangt.

@Snowman25
Naja, es fehlten einfach ne Menge Anführungszeichen und in der Zeile hier
Mal ehrlich Copy n'paste in zwei neben einander platzierte Editor-Fenster kann jedes Kind.
Naja, es fehlten einfach ne Menge Anführungszeichen und in der Zeile hier
IF %CLIENTNAME% NEQ Console set PC=%Clientname% IF %CLIENTNAME% EQU Console set PC=%COMPUTERNAME%
der Hauptfehler - werden zwei Anweisungen in einer Zeile hinter eine IF-Anweisung geschrieben, ohne das man sie getrennt hätte also abtrennen wie ich es oben gemacht habe. Sieht man eigentlich auf den ersten Blick.Mal ehrlich Copy n'paste in zwei neben einander platzierte Editor-Fenster kann jedes Kind.

Das mit den Anführungszeichen und den beiden IFs in einer Zeile hatte ich ja auch schon anfangs mitgeteilt...
Eben, deswegen wollte ich es auch eigentlich nicht noch einmal wiederholen, aber @Snowman25 brauchte wohl eine extra Einladung.Aber der TO hat wohl anscheinend sowieso kein Interesse mehr am Thread.
[OT]
Moin icybox, moin Snowman,
geht es euch eigentlich auch so, dass ihr euch auch so relaxed und chillig verhaltet, weil bald das lange Wochenende anfängt?
Mag ja sein, dass der Tonfall eures Dialogs in dem anderen Thread ausnahmsweise entgleist ist. Bzw. mag nicht nur sein, das ist so gewesen.
Aber bitte regelt das mit einem kurzen PN-Dialog (Beispiel "Sorry für gestern, schönes Wochenende ", Antwort "Ach was, Schwamm drüber,.Vrohe Vinxten"), aber bitte nicht offentlich über mehrere Beiträge verteilt.
Danke schon mal, wenn ihr das ohne Moderation hinbekommt
Biber
[/OT]
Moin icybox, moin Snowman,
geht es euch eigentlich auch so, dass ihr euch auch so relaxed und chillig verhaltet, weil bald das lange Wochenende anfängt?
Mag ja sein, dass der Tonfall eures Dialogs in dem anderen Thread ausnahmsweise entgleist ist. Bzw. mag nicht nur sein, das ist so gewesen.
Aber bitte regelt das mit einem kurzen PN-Dialog (Beispiel "Sorry für gestern, schönes Wochenende ", Antwort "Ach was, Schwamm drüber,.Vrohe Vinxten"), aber bitte nicht offentlich über mehrere Beiträge verteilt.
Danke schon mal, wenn ihr das ohne Moderation hinbekommt
Biber
[/OT]

[OT] Kann er gerne tun ich habe mir nichts vorzuwerfen, scheint einfach manche User zu geben die hier auf diese Weise Ihren Frust loswerden wollen. Einfach nur unprofessionell kann man da nur sagen, und das in einem "Administrator"-Forum.[/OT]