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, 794 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 ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(4)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Exchange Server
gelöst MS Exchange 2016 - Basicconfig Fragen (16)

Frage von maddig zum Thema Exchange Server ...

Firewall
gelöst Offene Fragen zu iptables (4)

Frage von Lars15 zum Thema Firewall ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...

Vmware
gelöst Fragen zu vCenter Server 6 (2)

Frage von lordfire112 zum Thema Vmware ...

Heiß diskutierte Inhalte
Erkennung und -Abwehr
Virenschutz - Meinungen (24)

Frage von honeybee zum Thema Erkennung und -Abwehr ...

Windows 10
Welches OS für Firmengeräte? (17)

Frage von MarkusVH zum Thema Windows 10 ...

Exchange Server
SBS2011: POP3-Connector 10 MB Grenze Email Benachrichtigung (13)

Frage von bogi1102 zum Thema Exchange Server ...

DNS
Brauche einen Nameserver (12)

Frage von leon123 zum Thema DNS ...