FreeBSD sockstat ausgabe in .csv datei in mehr als einer Spalte
Hallo Zusammen,
ich bin neu im Thema FreeBSD und googlen hat mich leider nicht auf mein gewünschtes Ergebnis gebracht, daher hoffe ich hier hilfe zu erhalten:
Folgende Thematik: Ich möchte das Ergebnis meines sockstat -4 in einer .csv Datei festhalten. sockstat -4 > ergebnis.csv macht dies auch. Leider ohne vernünftige Formatierung. Er schreibt leider alles in die erste Spalte, so dass man nicht wirklich eine übersicht erhält und die Liste z.B. nach USER'n nicht sortierbar ist.
Stundenlanges googlen hat mich irgendwann bis zu folgendem gebracht:
sockstat -4 |awk 'BEGIN {FS="[ :/]"; OFS=","} $1 == "tcp" {x=$8; y=$9} $1 == "udp" {x=""; y=$8}{print $4,$1,$5,$6,$7,x,y}'
Leider mit dem selben, nicht nutzbaren ergebnis.
Hat von euch jemand einen Tipp wie man das lösen kann? Ein Einzeiler wäre mir am liebsten
Gruß
SilenZer
ich bin neu im Thema FreeBSD und googlen hat mich leider nicht auf mein gewünschtes Ergebnis gebracht, daher hoffe ich hier hilfe zu erhalten:
Folgende Thematik: Ich möchte das Ergebnis meines sockstat -4 in einer .csv Datei festhalten. sockstat -4 > ergebnis.csv macht dies auch. Leider ohne vernünftige Formatierung. Er schreibt leider alles in die erste Spalte, so dass man nicht wirklich eine übersicht erhält und die Liste z.B. nach USER'n nicht sortierbar ist.
Stundenlanges googlen hat mich irgendwann bis zu folgendem gebracht:
sockstat -4 |awk 'BEGIN {FS="[ :/]"; OFS=","} $1 == "tcp" {x=$8; y=$9} $1 == "udp" {x=""; y=$8}{print $4,$1,$5,$6,$7,x,y}'
Leider mit dem selben, nicht nutzbaren ergebnis.
Hat von euch jemand einen Tipp wie man das lösen kann? Ein Einzeiler wäre mir am liebsten
Gruß
SilenZer
Please also mark the comments that contributed to the solution of the article
Content-Key: 1388661451
Url: https://administrator.de/contentid/1388661451
Printed on: April 28, 2024 at 23:04 o'clock
7 Comments
Latest comment
Zitat von @SilenZer:
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
root python3.6 693 26 tcp4 192.168.21.55:43602 192.168.21.54:4505
_ntp ntpd 674 6 udp4 192.168.21.55:48448 192.168.21.53:123
Hier mal ein Beispiel was auf der Console erscheint.
Wenn ich dies nun kopiere oder automatisiert in eine CSV schreiben lasse, knallt er eine komplette Zeile in genau eine Zelle.
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
root python3.6 693 26 tcp4 192.168.21.55:43602 192.168.21.54:4505
_ntp ntpd 674 6 udp4 192.168.21.55:48448 192.168.21.53:123
Hier mal ein Beispiel was auf der Console erscheint.
Wenn ich dies nun kopiere oder automatisiert in eine CSV schreiben lasse, knallt er eine komplette Zeile in genau eine Zelle.
Und wie hättest Du es gerne?
Zitat von @SilenZer:
Hey,
die ausgabe sieht nun so aus:
Hey,
die ausgabe sieht nun so aus:
USER;;;;;COMMAND;;;;PID;;;FD;PROTO;;LOCAL;ADDRESS;;;;;;;;;FOREIGN;ADDRESS;;;;;;
> root;;;;;python3.7;;29953;26;tcp4;;;192.168.21.103:18862;;192.168.21.51:4505
> root;;;;;sendmail;;;6299;;4;;tcp4;;;192.168.21.159:25;;;;;*:*
Dann so:
sockstat -4 | sed "s/ \+/;/g" | sed "s/;ADDRESS/ ADDRESS/g"