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

Anmeldescripte unter Windows 7

Frage Entwicklung Batch & Shell

Mitglied: roniku

roniku (Level 1) - Jetzt verbinden

21.01.2011, aktualisiert 24.01.2011, 4995 Aufrufe, 5 Kommentare

Hallo,

in unserem Windows Netzwerk mit Hauptsächlich XP Rechnern verwende ich folgende Zeile in den Anmeldescripten,
um die IP-Adresse zu ermitteln, und daraus den Standort zu ermitteln:

for /f \"Tokens=2 Delims=[] skip=1\" %%i in (\'ping -n 1 %computername%\') do set ipadress=%%i
if /i %ipadress:~8,3% == 122 goto paris
if /i %ipadress:~8,3% == 121 goto london
if /i %ipadress:~8,3% == 120 goto rom

usw.
Die Standorte haben einen eigenen, unterschiedlichen IP-Adress-Bereich.

Nun haben wir erste Windows 7 Clients. Und gerade die sind \"wandernde Benutzer\" (Notebook) wo dieser Scriptteil sehr wichtig ist.
Bei den Win 7 Clients funktioniert diese Batchzeile nicht.

Wer kann helfen.

Möchte erstmal nicht mit GPO arbeiten.

Vielen Dank.
R. Kusch
Mitglied: 60730
22.01.2011 um 00:35 Uhr
Salü,

so ganz kann das Script aber auch unter XP nicht funktionieren...

Da sind ein paar (alle) \ zuviel (falsch) und dafür ein -4 (um ipv6 auszuschliessen) zuwenig.

Auch die Abfrage mit /i ist etwas überflüssig - den Unterschied zwischen a und A könnte man ja so herausfinden, aber bei ZahlenZiffern?
Warum überhaupt mit einer Schleife?

01.
if /i "%logonserver%"=="\\%computername%" echo kein DC gefunden 
02.
if /i "%logonserver%"=="\\dcparis" echo Bienvenue a Paris 
03.
if /i "%logonserver%"=="\\dclondon" echo welcome to London 
04.
if /i "%logonserver%"=="\\dcrom" echo Benvenuti a Roma
wobei da die /i genauso überflüssig sind - aber Sinn machen "könnten"

Gruß
Bitte warten ..
Mitglied: roniku
24.01.2011 um 09:07 Uhr
Hallo,

vielen Dank für die Antwort.
Doch, genau das funktioniert so.
Die erste Zeile ist zum indentifizieren der IP-Adresse.
Und genau danach möchte ich den Standort erkennen, da es auch Standorte ohne DC gibt.
Die Indendifizierung nach DC's mache ich zur Zeit als Notlösung.
Wenn ein Standort jedoch keinen DC hat, meldet der Rechner sich an irgendeinen an, und das gibt Probleme.

Das Script läuft so schon einige Jahre verlässlich in unserem Netzwerk.
Das Problem ist also die erste Scriptzeile.

Grüsse
R. Kusch
Bitte warten ..
Mitglied: 60730
24.01.2011 um 09:55 Uhr
Salü,

bitte überprüfe dein Script mit dem geposteten Teil und lese - was ich dir geschrieben habe.
^^UNd was das Script machten sollte - das ist uns doch klar.

for /f \"Tokens=2
kann so nicht funktionieren

skip=1
ist leicht überflüssig

Nimm zum Test mal:

01.
for /f "Tokens=2 Delims=[]" %i in ('ping -n 1 -4 %computername%') do if not defined ipadress set ipadress=%i
UNd bitte verschiebe deine Frage in den Bätsch & Shell Bereich - da gehört Sie hin.
Gruß
Bitte warten ..
Mitglied: miniversum
24.01.2011 um 19:48 Uhr
Der Vollständigkeit halber noch die Version ohne "if not defined":
for /f "Tokens=2 Delims=[]" %i in ('ping -n 1 -4 %computername% ^| find /i "%computername%"') do set ipadress=%i
Bitte warten ..
Mitglied: roniku
24.01.2011 um 20:21 Uhr
Hallo,

vielen Dank für Eure Hilfe, das Problem ist gelöst.
Habe noch ein bischen probiert und die Zeile ergänzt:

for /f "Tokens=2 Delims=[]" %%i in ('ping -n 1 -4 %computername% ^| find /i "%computername%"') do set ipadress=%%i

So funktioniert sie auch in einem Batch (sonst nur direkt in der Eingabeaufforderung).
Alle Clients können so wieder das gleiche Anmeldescript verwenden.

Grüsse
R. Kusch
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...