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

Zwei fragen zu findstr

Frage Entwicklung Batch & Shell

Mitglied: netlord

netlord (Level 1) - Jetzt verbinden

14.10.2014, aktualisiert 22.10.2014, 809 Aufrufe, 8 Kommentare

Hallo Administratoren ;)

ich habe zwei Fragen zu findstr

1.)
wir haben Rechner mit unterschiedlicher Anzahl von Raid-Controllern. Diese soll/muss ich Zählen und dann weiter verarbeiten. Daher brauche ich nur die Anzahl als Ziffer.

Dazu gibts die storcli.exe
Eine typische Ausgabe sieht so aus:
//**storcli show ctrlcount**// 
**status code = 0** 
**status = success** 
**description = none** 
 
**controller count = 1**
also habe ich folgendes versucht
//**storcli show ctrlcount | findstr /b controller | findstr /e /r [0-9]**//
Das Egebniss ist jedoch controller count = 1 und nicht nur die 1

Was mache ich falsch?

2.)
Ich muss ein Laufwerk auf dem DHCP-Server verbinden.
Was ist die einfachste Möglichkeit die IP des DHCP-Servers zu finden?

Im Prinzip schwebt mir da ne sehr ähnliche Lösung vor - die betreffende Zeile finden und dann die letzten X Werte einlesen, aber.....

Danke und Gruß
netlord
Mitglied: Nick.B
14.10.2014 um 12:56 Uhr
Du musst doch einfach nur den ersten Befehl "findstr /b controller" weg lassen oder verstehe ich dich jetzt falsch ??
Bitte warten ..
Mitglied: netlord
14.10.2014 um 13:00 Uhr
Hallo Nick

das geht nicht - dann findet er alle Zeilen die eine Ziffer als letzten Eintrag haben.
Bitte warten ..
Mitglied: ITvortex
14.10.2014, aktualisiert um 13:43 Uhr
Hallo netlord,

01.
 (storcli show ctrlcount | findstr /b controller).Split("="" ") | findstr /E [0-9]
Liebe Grüße
ITvortex
Bitte warten ..
Mitglied: Nick.B
14.10.2014 um 13:46 Uhr
Dann versuch es mal mit dem Befehl "/Find"

/V Zeigt alle Zeilen an, die die Zeichenfolge NICHT enthalten.
/C Zeigt nur die Anzahl der die Zeichenfolge enthaltenden Zeilen an.
/N Zeigt die Zeilen mit ihren Zeilennummern an.
/I Ignoriert Groß-/Kleinschreibung bei der Suche.

Ich glaube "Find /C" oder "Find /N" sollte das richtige für dich sein.

MfG Nick
Bitte warten ..
Mitglied: ITvortex
14.10.2014, aktualisiert um 13:49 Uhr
Die Frage war zu "findstr" oder irre ich mich?

PS: Weshalb sollte das dass richtige für ihn sein?
Bitte warten ..
Mitglied: ITvortex
LÖSUNG 14.10.2014, aktualisiert 22.10.2014
Zu deinem zweiten Punkt:

01.
 (ipconfig /all | findstr "   DHCP").Split(":"" ") | findstr [0-9] 
Also wenn du es mit findstr machen willst....
Bitte warten ..
Mitglied: bastla
LÖSUNG 14.10.2014, aktualisiert 22.10.2014
Hallo netlord!

findstr arbeitet zeilenorientiert und liefert daher immer die gesamte Zeile als Ergebnis. Für die Zerlegung kannst Du eine for-Schleife verwenden - ungetestet etwa:
01.
for /f "tokens=2 delims==" %%i in ('storcli show ctrlcount ^| findstr /b "controller"') do set /a Anzahl=%%i 
02.
echo %Anzahl%
Analog dazu:
01.
for /f "tokens=2 delims=:" %%i in ('ipconfig /all^|findstr "DHCP-Server"') do set "DCHP=%%i" 
02.
echo %DHCP%
Das Leerzeichen am Beginn der Variablen %DHCP% kannst Du mit zB
set "DHCP=%DHCP: =%"
(= "ersetze alle Leerzeichen in %DHCP% durch Nichts") auch noch los werden ...

Grüße
bastla
Bitte warten ..
Mitglied: netlord
22.10.2014, aktualisiert um 14:18 Uhr
Hallo

erst mal danke für die Antworten - im Moment war aber was anderes wichtiger.....

Zitat von ITvortex:

Also wenn du es mit findstr machen willst....

Nein, ich will das nicht zwingend mit findstr machen. Imho kann ich mit find jedoch nicht machen, deswegen habe ich es mit findstr versucht.
However - ich bin so pragmatisch dass ich durchaus das nehme was mir am schnellsten und einfachsten weiterhilft.

Daher bin ich in der Zwischenzeit bei grep gelandet.
Das Prinzipielle Problem ist ja - ich suche eine Zeile die ich am beginn der Zeile erkenne und brauche dann die letzten n stellen.
Mit grep geht das so:

letztes zeichen 1 ziffer
| grep ^beginn | grep -o '.$'

letzte zeichen mehrere ziffern
| grep ^beginn | grep -ioe '[0-9]*$'

letzte zeichen mehrere buchstaben
| grep ^beginn | grep -ioe '[a-z]*$'

ip-adresse
grep -eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

Ich bin und bleibe nun bei grep da ich es auch noch an einer anderen Stelle brauche - bastla mag sich noch daran erinnern (http://www.administrator.de/link/uninstallierte-geräte-im-gerä ...)
Dieses Script aus diesem Thread macht grep mit einem einzeiler (!).

Trotzdem danke an alle!

Gruß
netlord
Bitte warten ..
Ähnliche Inhalte
Netzwerkmanagement
gelöst Habe eine Frage zur Netzwerktechnik und zwei Switche? (7)

Frage von deadlef zum Thema Netzwerkmanagement ...

Batch & Shell
gelöst Mal eine neue Art von Abfrage mit findstr (8)

Frage von DaTobsn zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateinamen mittels findstr aus einer TXT auslesehen (14)

Frage von Diamond72 zum Thema Batch & Shell ...

Batch & Shell
gelöst Findstr - code für schwieriger Abfrage gesucht (9)

Frage von reissaus73 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 im Unternehmen? (28)

Frage von zorlayan zum Thema Windows 10 ...

LAN, WAN, Wireless
Ping u. DNS geht am Rechner nicht mehr (21)

Frage von Kuemmel zum Thema LAN, WAN, Wireless ...

Festplatten, SSD, Raid
Raid 1 2 SSD mit Windows Server 2016 (17)

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