Sebastian82 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 Hallo, könnt ihr mir bei folgendem Problem helfen: Ich möchte mit hilfe einer batch Datei einem Rechner eine IP Adresse zuweisen. Wisst ihr vielleicht wie das geht? Gruß, Sebastian Zitieren Link zu diesem Kommentar
Silent_Man 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 Hallo, einen DOS-Befehl kenne ich nicht. Du kannst mit dem Ressource-Kit direkt in die Registrierung schreiben. Wenn Du die Parameter des Dienstes änderst und den Dienst neu startest: VOILA. Beides kannst Du dann über ein Batch-File erledigen. mfg Andreas Zitieren Link zu diesem Kommentar
Lakritzschnecke 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 Mit netsh geht das! Musst Dir mal den Befehl genauer anschauen und evtl. googlen! Habe hier ein Script zum ändern des Gateways (zugeschnitten auf meinen Rechner); wird Dir wahrscheinlich nicht viel helfen! Zitieren Link zu diesem Kommentar
thorgood 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 Suche einmal im Board nach NETSH Zitieren Link zu diesem Kommentar
Sebastian82 10 Geschrieben 9. November 2004 Autor Melden Teilen Geschrieben 9. November 2004 Hi, super kommando. Könnt ihr mir vielleicht noch verraten wie ich in einer batch Datei eine Zeile aus einer *.txt Datei in eine Variable einlese? Gruß, Sebastian Zitieren Link zu diesem Kommentar
Dr.Lecter^ 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 hi! FOR /F "eol= tokens=1" %%i in (C:\file.txt) do wenn du zeilenweise ausliest...und hier ein space das ende der zeile kennzeichnet..kannst du natürlich ändern in %%i steht dann dein "was auch immer" weitere parameter: skip=7 überstringen tokens=1,2,3 kannst auch mehrere variablen auslesen.. delims=\. ..die durch dieses trennzeichen im textfile getrennt sind hoff das hilft lg Zitieren Link zu diesem Kommentar
Sebastian82 10 Geschrieben 9. November 2004 Autor Melden Teilen Geschrieben 9. November 2004 Hi, ich habe einen Teil meiner Lösung einmal gepostet und hätte gerne von euch gewußt, ob das so funktioniert. Was ich damit bezwecken will: In zwei verschiedenen Dateien stehen die Werte für eine IP Adresse und eine Subnetmask. Ich möchte mit hilfe einer Batch Datei deren Inhalt auslesen und vergleichen. Steht in der ersten Datei der Anfang der richtigen IP Adresse möchte ich testen ob in der zweiten Datei die richtige Subnetmask steht. Trifft dies zu sollen die Einstellungen der Netzwerkkarte geändert werden. for /f %%a in (%systemroot%\%DATEI2%) do IF "169.254"=="%%a" do for /f %%b in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%b" do netsh interface ip set address name = "%NAME%" source = static addr = %IP% mask = %MASK% for /f %%c in (%systemroot%\%DATEI2%) do IF "169.254"=="%%c" do for /f %%d in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%d" do netsh interface ip set address name = "%NAME%" gateway = %GATEWAY% gwmetric = 1 for /f %%e in (%systemroot%\%DATEI2%) do IF "169.254"=="%%e" do for /f %%f in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%f" do netsh interface ip set dns name = "%NAME%" source = static addr = %DNS% for /f %%g in (%systemroot%\%DATEI2%) do IF "169.254"=="%%g" do for /f %%h in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%h" do netsh interface ip set wins name = "%NAME%" source = static addr = %WINS% Ich hoffe ihr könnt trotz der ganzen variablen nachvollziehen was ich meine. Bei allen Zeilen sollen beide Text Dateien überprüft werden. In der ersten Zeile wird bei einer Übereinstimmung die IP Adresse und Subnetmask-, in der zweiten das Gateway-, in der dritten die IP für den DNS Server und in der vierten die Einstellungen für den WINS Server vorgenommen. (leider sind die Zeilen so lang das immer zwei Zeilen hier im Board einer Zeile im Batch Script ) Zitieren Link zu diesem Kommentar
thorgood 10 Geschrieben 9. November 2004 Melden Teilen Geschrieben 9. November 2004 rem IP-Adresse auslesen und auf die ersten 7 Stellen kürzen set IPADDR=xxx.xxx.xxx.xxx for /f %%a in (%systemroot%\%DATEI2%) do set IPADDR=%%a set IPADDR=%IPADDR:~0,7% rem IP-Maske auslesen set IPMASK=xxx.xxx.xxx.xxx for /f %%a in (%systemroot%\%DATEI3%) do set IPMASK=%%a rem Abfrage if "%IPADDR%" == "169.254" ( if "%IPMASK%" == "255.255.0.0" ( netsh interface ip set address name = "%NAME%" source = static addr = %IP% mask = %MASK% netsh interface ip set address name = "%NAME%" gateway = %GATEWAY% gwmetric = 1 netsh interface ip set dns name = "%NAME%" source = static addr = %DNS% netsh interface ip set wins name = "%NAME%" source = static addr = %WINS% ) ) Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.