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

Werte aus Textdatei auslesen, ändern und in Batch ausführen

Frage Entwicklung Batch & Shell

Mitglied: Lamerking

Lamerking (Level 1) - Jetzt verbinden

05.10.2007, aktualisiert 11.10.2007, 5831 Aufrufe, 8 Kommentare

Hallo zusammen,

ich habe folgendes Problem:

Ich benötige eine Batchdatei, die die zweite Netzwerkkarte der einzelnen Server automatisch deaktiviert.

Zum deaktivieren der Netzwerkkarte gibt es das Kommandozeilenutility devcon.

Mit dem Befehl

devcon find =net wird folgendes aufgelistet (Werte sind natürlich abhängig vom Server):

a72344b321d2228aae378594dc7a6b6f-net - Klicke auf das Bild, um es zu vergrößern


Ich kriegs leider selber nicht hin, eine Batchdatei (oder WSH-Skript) zu schreiben, welche von der oben beschriebenen Ausgabe immer die zweite Zeile entnimmt und mit dem Befehl

devcon disable @PCI\VEN_1022^&DEV_2000^&SUBSYS_20001022^&REV_10\3^&61AAA01^&0^&88

die zweite Netzwerkkarte deaktiviert.
Zu beachten ist, dass der Befehl nur funktioniert, wenn vor jedem & ein ^ eingefügt ist.

Hat jemand von euch ne Idee?

Vielen Dank schon mal.

Gruß
Tobias
Mitglied: bastla
05.10.2007 um 16:59 Uhr
Hallo Lamerking!

Könnte etwa so gehen:
01.
@echo off & setlocal 
02.
set a= 
03.
for /f "skip=1 delims=:" %%i in ('devcon find =net') do if not defined a set "a=%%i" 
04.
set "a=%a:&=^&%" 
05.
devcon disable @%a%
Grüße
bastla
Bitte warten ..
Mitglied: Lamerking
11.10.2007 um 14:02 Uhr
Hallo,

erst mal Danke für deine Mühen.

Ich hab das ganze jetzt endlich mal ausprobiert:

C:\>set a=

C:\>for /F "skip=1 delims=:" %i in ('devcon find net') do if not defined a set
a=%i"

C:\>set "a=&=^&"

C:\>devcon disable @ & &
HTREE\ROOT\0 : Disabled
1 device(s) disabled.
Der Befehl "&" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

Er hat wohl Probleme mit der Zeile set "a=&=^&". Hab selbst schon ein bisschen rumprobiert, krieg es aber nicht hin.
Hast du eine Ahnung wo der Fehler liegen könnte?

Danke schon mal im Voraus.

Gruß
Tobias
Bitte warten ..
Mitglied: bastla
11.10.2007 um 14:47 Uhr
Hallo Lamerking!

Das sieht eigentlich so aus, als hätte %a% gar keinen Inhalt bekommen ...

Bau zur Kontrolle einmal nach dem "for" ein
01.
echo "%a%"
ein.

Grüße
bastla
Bitte warten ..
Mitglied: Lamerking
11.10.2007 um 14:57 Uhr
Hi,

er gibt folgendes aus:

echo ""
""
Bitte warten ..
Mitglied: bastla
11.10.2007 um 15:10 Uhr
... was meine Vermutung bestätigt: %a% hat keinen Inhalt - Ansatzpunkt daher die "for"-Schleife, und hier zunächst
01.
devcon find net
Bitte einmal nur diesen Befehl eingeben und überprüfen, dass das Ergebnis auch wirklich aus mehr als einer Zeile besteht.

Grüße
bastla
Bitte warten ..
Mitglied: bastla
11.10.2007 um 15:20 Uhr
... bzw versuche es im Batch (in der "for"-Zeile) mit der folgenden Schreibweise:
01.
devcon find ^=net
Grüße
bastla
Bitte warten ..
Mitglied: Lamerking
11.10.2007 um 15:24 Uhr
Hi,

muss sagen: Riesen Mann!
Vielmals Danke!!!!!

Gruß
Tobias
Bitte warten ..
Mitglied: Biber
11.10.2007 um 21:05 Uhr
Moin lamerking und bastla,

auch wenn es eigentlich schon gelöst ist, würde ich hgern nach eine Variante nachreichen, in der ich ein bisschen die Anführungszeichen umgruppiert habe.

Dann bleibt:
01.
::----snipp devconDisable2ndNet.bat 
02.
@for /f "delims=: tokens=1-2" %%i in ('devcon find "=net"^|findstr /n .') do @if %%i==2 devcon disable @"%%~i" 
03.
::----snapp devconDisable2ndNet.bat
...aber andererseits: diese Goldene Regel "Never run a changing system" oder "Change a never running system" oder wie die heißt, die kenn ich auch. Also wenn bastlas Variante tut, was sie soll, das ist es gut so.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Mehrzeiligen Powershell-Befehl mit Batch ausführen (3)

Frage von 133202 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: Textdatei Zeilenweise auslesen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch-Script für FTP-Zugang lässt sich nicht als Admin ausführen (5)

Frage von Bobstarlet zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Windows 10
Windows 10 Home "Netzlaufwerk nicht bereit" (17)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
Exchange Postfach leeren - nicht löschen (10)

Frage von AndreasOC zum Thema Exchange Server ...