-
Prozess zu einem offenen Port ermitteln
Um den Prozess zu einem offenen Port zu finden gibt es verschiedene Möglichkeiten. Als Beispiel wollen wir für einen Port 5000 in Erfahrung bringen, welcher Prozess dahinter läuft. Der erste Versuch könnte ein grep auf den Port mit ps -ef sein. Dieser Ansatz ist nur ergfolgreich, wenn ein Prozess den Port als Argument übergeben bekommt. Das ist nur in wenigen Fällen so. LSOF lsof mit der Option -i gefolgt von :<PORT> werden die Prozess angezeigt, die diesen Port offen halten.❗ Wenn man nicht der technische Benutzer ist, unter dem der Prozess läuft, sieht man keine Ausgabe: Mit sudo oder als Benutzer, dem der Prozess gehört, wird der Prozessnamen und die…
-
Zeichen aus Zeichenketten mit bash/ksh schneiden
Mit bash oder Korn Shell kann man auf einfachem Wege Zeichen in Zeichenketten ermitteln, bzw. herausschneiden. Dazu ist einfach nach einer Variable mit : getrennt die erste zu ermittlende Position anzugeben, gefolgt von einem weiteren : mit der Anzahl der auszugebenden Zeichen. ${VARIABLENAME:<erstes Zeichen>:<Anzahl>} Beispiel: TEXT="Holger Slomka" echo ${TEXT:2:3} lge Ein Beispiel für eine mögliche Verwendung, ist die Ausgabe aller Zeilen einer Datei, die nicht mit # beginnen. for Zeile in `cat inifile| cut -d’ ‘ -f1`; do if [[ ${Zeile:0:1} != “#” ]]; then echo $Zeile/span> fi done Es werden also Kommentarzeilen ausgeblendet, analog grep -v ^#.
-
Sehr nützliche grep Funktionen
grep wird von Linuxx/Unix Administratoren zwar sehr oft genutzt, einige sehr mächtige Optionen werden aber zu Unrecht wenig genutzt oder sind den Administratoren nicht bekannt. 1. Zeilen vor und nach der Fundstelle des Suchbegriffs ausgeben. grep bietet die äusserst nützliche Funktion, Zeilen vor und nach dem gefundenen Suchbegriff anzuzeigen. Um die Funktionen der grep Optionen darzustellen, verwende ich als Beispiel ein IBM Skript mit folgendem Inhalt, das von grep durchsucht wird: cat collector.sh #!/bin/sh binDir=`dirname ${0}` . ${binDir}/setupCmdLine.sh ${WAS_HOME}/bin/collector.sh “$@” Die Option -A zeigt n Zeilen nach der Fundstelle an. grep -A 1 setup collector.sh . ${binDir}/setupCmdLine.sh ${WAS_HOME}/bin/collector.sh “$@” Die Option -B zeigt n Zeilen vor der Fundstelle an. grep…
-
Zeichenketten in mehreren Dateien und Verzeichnissen suchen
Unter Unix bietet grep eine einfache Lösung um Zeichenketten in Dateien zu finden. Möchte man in allen Dateien eines Verzeichnisses und den Unterverzeichnissen eine bestimmte Zeichenkette (z.B BLABLA) suchen, so reicht der Befehl grep BLABLA * nicht, da keine Unterverzeichnisse durchsucht werden. Eine Alternative ist die Kombination aus den Befehlen: find, xargs und grep. find . -type file | xargs grep -i BLABLA find . -type file -print | xargs grep -i BLABLA egrep ist eine weitere mächtige Alternative. Mit der Option -R ist es in der Lage rekursiv Unterverzeichnisse zu durchsuchen: egrep -R BLABLA * Das funktioniert auch Super in der Windows bash! Allerdings kann man grep nicht auf…