Top-Themen

Aktuelle Themen (A bis Z)

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 Je nach IP-Adresse Server für auszuführende Datei ändern

Mitglied: XcaschoX

XcaschoX (Level 1) - Jetzt verbinden

20.12.2013, aktualisiert 23.12.2013, 1997 Aufrufe, 14 Kommentare, 1 Danke

Hallo,
ich benötige eure Hilfe. Ich habe verschiedene Server (in Europa verteilt) auf denen jeweils in einem Share die gleiche auszuführende Datei liegt.
Per Loginscript wird eine Batchdatei ausgeführt, die die jeweiliege Datei ausführen soll die auf dem jeweiligen location Server liegt.

Das ganze soll ungefähr so aussehen.

:LOCATION
for /f "delims=[] tokens=2" %%a in ('ping -4 %computername% -n 1 ^| findstr "["') do (set ipaddress=%%a)
echo IP address detected: %ipaddress%

REM detect server site and set server

REM detect DE set NAS
if "%ipaddress%"=="%ipaddress:"xxx.xxx.102"=%" (
set server=Germany\public\TIAudit
GOTO WINNT
)
if "%ipaddress%"=="%ipaddress:"xxx.xxx.105"=%" (
set server=AUSTRIA\public\TIAudit
GOTO WINNT
)
if "%ipaddress%"=="%ipaddress:"xxx.xxx.109"=%" (
set server=FRANCE\public\TIAudit
GOTO WINNT
)
:WINNT
REM Run TrackIT Audit
Echo Please Wait....processing inventory

\\%SERVER%\AUDIT.EXE /NOREGAPPS

Leider wird immer der GERMANY Server verwendet.

Hat hier jemand eine Idee?

Danke für eure Hilfe.

Gruß & schon mal Frohe Weihnachten
Carsten
Mitglied: SaschaRD
20.12.2013 um 13:15 Uhr
Hallo Carsten,

warum er immer nur den Germany-Server verwendet? Ist eindeutig:
Du sagt Ihm doch nachdem "detect"
01.
REM detect DE set NAS
02.
if "%ipaddress%"=="%ipaddress:"xxx.xxx.102"=%" (
03.
set server=Germany\public\TIAudit
04.
GOTO WINNT
05.
)
das er ein "goto" machen sollen.
Somit wird nach der ersten Setzung direkt nach:
01.
:WINNT
02.
REM Run TrackIT Audit
03.
Echo Please Wait....processing inventory
04.

05.
\\%SERVER%\AUDIT.EXE /NOREGAPPS
gesprungen.

Gruß, Sascha
Bitte warten ..
Mitglied: XcaschoX
20.12.2013 um 13:18 Uhr
Hallo Sascha,

leider bin ich nicht der Profi was Batches angeht,
wie kann ich das machen, dass er weiter prüft?

Danke

LG
Carsten
Bitte warten ..
Mitglied: SaschaRD
20.12.2013, aktualisiert um 13:32 Uhr
Hallo Carsten,

Lösung-1 ist mit weiteren "Goto's":
01.
REM detect DE set NAS
02.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.102"=%" (
03.
set server=Germany\public\TIAudit
04.
echo ger
05.
GOTO AUSTRIA
06.
)
07.
:AUSTRIA
08.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.105"=%" (
09.
set server=AUSTRIA\public\TIAudit
10.
echo austria
11.
GOTO FRANCE
12.
)
13.
:FRANCE
14.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.109"=%" (
15.
set server=FRANCE\public\TIAudit
16.
echo france
17.
GOTO WINNT
18.
)
Oder Lösung-2, Du lässt die "Goto's" weg:
01.
REM detect DE set NAS
02.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.102"=%" (
03.
set server=Germany\public\TIAudit
04.
echo ger
05.
)
06.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.105"=%" (
07.
set server=AUSTRIA\public\TIAudit
08.
echo austria
09.
)
10.
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.109"=%" (
11.
set server=FRANCE\public\TIAudit
12.
echo france
13.
GOTO WINNT
14.
)
Habe Dir dazwischen Mal "echo's/Ausgaben" gemacht, damit kannst Du dann sehen ob er auch wirklich dort ist.


Gruß, Sascha
Bitte warten ..
Mitglied: XcaschoX
20.12.2013 um 14:56 Uhr
Hallo Sascha,
irgendwie läut das ding nicht rund. Hier mal die komplette Batch:

@echo off
REM Determine OS and run appropriate commands
REM if "%OS%"=="Windows_NT" goto LOCATION
REM goto END

VER | find "Microsoft Windows XP [Version 5.1" > nul
IF %errorlevel% EQU 0 GOTO LOCATION
VER | find "Microsoft Windows [Version 6.1" > nul
IF %errorlevel% EQU 0 GOTO LOCATION
VER | find "Microsoft Windows [Version 6.2" > nul
IF %errorlevel% EQU 0 GOTO LOCATION
goto END

:LOCATION
for /f "delims=[] tokens=2" %%a in ('ping -4 %computername% -n 1 ^| findstr "["') do (set ipaddress=%%a)
echo IP address detected: %ipaddress%

REM detect DE set NAS
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.101"=%" (
set server=GERMANY\public\TIAudit
echo GERMANY
)
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.102"=%" (
set server=FRANCE\public\TIAudit
echo FRANCE
)
IF "%ipaddress%"=="%ipaddress:"xxx.xxx.103"=%" (
set server=AUSTRIA\public\TIAudit
echo AUSTRIA
)

:WINNT
REM Run TrackIT Audit
Echo Please Wait....processing inventory
Echo %server%
REM \\%SERVER%\AUDIT.EXE /NOREGAPPS

:END
exit

Irgendwie nimmt wird das Ergebnis %server% immer den letzten server, in dem Fall immer "AUSTRIA".

Gruß
Carsten
Bitte warten ..
Mitglied: Endoro
20.12.2013, aktualisiert um 15:34 Uhr
Hey,
schau dir doch einfach mal die Ausgabe von
01.
echo("%ipadress:"xxx.xxx.xxx.102"=%"
an. Zoll zahlen ist schon richtig, aber zuviel ist Bestechung
Abgesehen von allem anderen...
lg.
Bitte warten ..
Mitglied: SaschaRD
20.12.2013 um 15:36 Uhr
Hallo Carsten,

bitte den code mit "<"code">" "</"code">" formatieren, siehe dazu auch Formatierungshilfe.
Wenn ich es richtig verstanden haben:
Hast Du die 3 x Server (Deutschland, Frankreich und Österreichen), auf denen jeweils in einem shared-folder, die gleiche auszuführende Datei liegt.
Du möchtest jetzt von deinem lokalen Computer aus per Batch (Loginskript), dich zu den Servern verbinden und die Datei ausführen, Richtig?

Wenn das Skript ausgeführt wird, möchtest Du dann, dass auf allen 3 x Servern die Datei ausgeführt wird oder auf einem bestimmten? Oder beides?
Bitte warten ..
Mitglied: XcaschoX
20.12.2013 um 15:49 Uhr
Hallo Sascha,

Wenn ich es richtig verstanden haben:
Hast Du die 3 x Server (Deutschland, Frankreich und Österreichen), auf denen jeweils in einem shared-folder, die gleiche
auszuführende Datei liegt.
Du möchtest jetzt von deinem lokalen Computer aus per Batch (Loginskript), dich zu den Servern verbinden und die Datei
ausführen, Richtig?
ja, so ist die Konstelation.

Wenn das Skript ausgeführt wird, möchtest Du dann, dass auf allen 3 x Servern die Datei ausgeführt wird oder auf
einem bestimmten? Oder beides?
durch das Script soll quasi gefiltert werde, von welchem Server die Datei gestartet wird. Sprich der Computer in Deutschland soll natürlich die Datei vom Deutschen Server starten, der Computer aus Frankreich natürlich die Datei vom Frankreich Server....

Gruß
Bitte warten ..
Mitglied: SaschaRD
LÖSUNG 20.12.2013, aktualisiert 23.12.2013
durch das Script soll quasi gefiltert werde, von welchem Server die Datei gestartet wird. Sprich der Computer in Deutschland soll
natürlich die Datei vom Deutschen Server starten, der Computer aus Frankreich natürlich die Datei vom Frankreich
Server....
Also wird das Loginskript von unterschiedlichen Computer ausgeführt und nicht von einem zentralen?
Die Versionsprüfung ist wofür gedacht?

PC FR führt Datei für Server FR aus.
PC AU Datei für Server AU aus.
PC DE Datei für Server DE aus.
Nur so oder darf PC DE auch die Datei von FR & AU ausführen?
Bitte warten ..
Mitglied: schmitzi
20.12.2013, aktualisiert um 21:39 Uhr
Hi, eigentlich ganz einfach:

das Problem ist dass Deine Bedingung

IF "%ipaddress%"=="%ipaddress:"xxx.xxx.105"=%"

IMMER zutrifft.

Deshalb hat er bei Deinem allerersten Versuch auch immer den 1. getroffen, also GERMANY,
(und ist wegen des GOTOS da ausgestiegen)

und beim letzten Versuch immer AUSTRIA, weil die GOTOS fehlen und er alle 3 (zutreffenden) Abfragen
durchläuft und die letzte halt gilt.

Also -> an der IF-Zeile arbeiten :O)

Kleine Hilfe:

IF %ipaddress:~8,-4%==101 ( blabla

SO sollte es gehen, und lass die GOTOs WEG, die brauchst Du (dann) gar nicht.


Gruss
RS
Bitte warten ..
Mitglied: Endoro
LÖSUNG 20.12.2013, aktualisiert 23.12.2013
Mein Vorschlag:
01.
IF NOT "%ipaddress%"=="%ipaddress:xxx.xxx.xxx.101=%" set "server=GERMANY\public\TIAudit"&ECHO GERMANY
02.
IF NOT "%ipaddress%"=="%ipaddress:xxx.xxx.xxx.102=%" set "server=FRANCE\public\TIAudit"&ECHO FRANCE
03.
IF NOT "%ipaddress%"=="%ipaddress:xxx.xxx.xxx.103=%" set "server=AUSTRIA\public\TIAudit"&ECHO AUSTRIA
04.
IF NOT DEFINED server ECHO Uups! Server for %ipaddress% not found.&PAUSE
Es geht auch noch mit Forschleifen, Zeigern und hastdunichtgesehen...
lg.
Bitte warten ..
Mitglied: XcaschoX
23.12.2013 um 08:27 Uhr
Hallo Sascha,

Genau,
alle PC´s die im Netzwerk xxx.xxx.101.xxx sollen nur die Datei vom Server im Netzwerk xxx.xxx.101.xxx ausführen, usw.

Die Versionsprüfung ist eigentlich gedacht, damit das ganze nur auf Windows7 und 8 läuft. Ich weiß da ist auch noch die XP abfrage drin.... (muss ich dann noch löschen)

Gruß
Carsten
Bitte warten ..
Mitglied: XcaschoX
23.12.2013 um 08:30 Uhr
Hallo Endoro,
danke für den Tipp, aber ich brauch ja nicht die abfrage auf die ip adresse xxx.xxx.xxx.101 sondern es geht um die Newzwerk adresse xxx.xxx.101.xxx.

Alle PC´s die im Netzwerk xxx.xxx.101.xxx sollen nur die Datei vom Server im Netzwerk xxx.xxx.101.xxx ausführen, usw.

LG
Carsten
Bitte warten ..
Mitglied: Endoro
LÖSUNG 23.12.2013, aktualisiert um 13:25 Uhr
Hey Carsten,
dann kürze den Vergleichs-IP Ausdruck um ein Oktett: xxx.xxx.101 usw.
lg.
Bitte warten ..
Mitglied: XcaschoX
23.12.2013 um 13:24 Uhr
Hallo Endoro,
super ich glaube jetzt gehts so wie ich es mir vorstelle. Vielen Danke für deine Hilfe.

@SaschaRD, auch die vielen Dank.

Frohe Weihnachten und einen Guten Rutsch.

Liebe Grüße

Carsten
Bitte warten ..
Ähnliche Inhalte
Router & Routing

Zugriff auf NAS in anderem IP-Adress Bereich

gelöst Frage von TorstenhofRouter & Routing12 Kommentare

Hallo liebe Forumsmitglieder Ich habe folgendes Problem mit einer Netzwerkkonfiguration: Netzwerk 1: IP Adressen 192.168.0.x Arbeitsplatzrechner und NAS Zugriff ...

LAN, WAN, Wireless

MAC Adress Finder bzw. Scanner (legal)

gelöst Frage von SchwarzerRieseLAN, WAN, Wireless9 Kommentare

Hallo zusammen, ich habe in meinem Heimnetzwerk (mit einer FritzBox als Modem & Router) folgendes "Problem": Irgendein Nachbar besitzt ...

Windows Tools

Cobra Adress Plus und Outlook

gelöst Frage von hartmann0Windows Tools8 Kommentare

Hallo, da ich durch Googlen leider einfach nichts finde, habe ich mich entschlossen, mich einfach mal hier an das ...

Sonstige Systeme

Cobra Adress Plus - im Terminalbetrieb

gelöst Frage von 118080Sonstige Systeme7 Kommentare

Ist hier zufälligerweise jemand im Forum der die Software Cobra Adress Plus kennt?? Hätte nämlich eine Frage und falls ...

Neue Wissensbeiträge
Internet

Schwarzer Tag für die Netzfreiheit: Die umstrittene Urheberrechtsreform wurde beschlossen

Information von Frank vor 13 StundenInternet22 Kommentare

Ich zitiere einfach mal Julia Reda von den Piraten, da mir selbst einfach die Worte dazu fehlen: Schwarzer Tag ...

Internet
Ist zwar keien Anleitung, aber
Anleitung von SachsenHessi vor 14 StundenInternet1 Kommentar

oder doch eine Anleitung ? Für die nächste EU-Wahl ? SH

PHP
Pfsense - Vouchergenerator 1.6.1
Anleitung von cafepost vor 15 StundenPHP

Hallo Zusammen , aus Sicherheitsgründen wurde mein Server auf den neuesten Stand gebracht, jetzt wollte ich den Vouchergenerator 1.6.1 ...

Internet

Verlag protestiert gegen Artikel 13 (jetzt Artikel 17) der geplanten EU-Verordnung

Information von Dilbert-MD vor 18 StundenInternet

Leider etwas spät, aber immerhin hat auch der heise-Verlag eingesehen, dass die Umsetzung der Urheberrechtsreform - so wie sie ...

Heiß diskutierte Inhalte
Internet
Schwarzer Tag für die Netzfreiheit: Die umstrittene Urheberrechtsreform wurde beschlossen
Information von FrankInternet22 Kommentare

Ich zitiere einfach mal Julia Reda von den Piraten, da mir selbst einfach die Worte dazu fehlen: Schwarzer Tag ...

Voice over IP
Mikrotik: Voip mit SIP Phones in verschiedenen Subnetzen mit FritzBox
Frage von SpartacusVoice over IP20 Kommentare

Hallo, ich habe das Problem, dass ich verschiedene SIP-Clients in unterschiedlichen Subnetzen habe, die mit meinem Server FritzBox7412 keine ...

Batch & Shell
Computer im Active Directory filtern
Frage von chkdskBatch & Shell16 Kommentare

Hallo Zusammen, ich möchte über die Powershell Computer im Active Directory filtern. Als Beispiel: listet mir alle Computer auf, ...

LAN, WAN, Wireless
Netzwerkkomponenten von 2011 und nur 100 Mbit?
gelöst Frage von FalaffelLAN, WAN, Wireless16 Kommentare

Hallo zusammen, ist es möglich, dass bei Netzwerkkomponenten von ca. 2011 nicht mehr wie 100 Mbit möglich ist? Konkret ...