suradan gideyim
grep -Eo 'inet (addr🙂?([0-9].){3}[0-9]' | grep -Eo '([0-9].){3}[0-9]' | grep -v '127.0.0.1'
'inet (addr🙂?([0-9].){3}[0-9]'
inet ipadressi olan satirlari aldim.
Grep bazi ozel karakterleri string olarak varsayiyor, bunun icin -E flagi verirsek artik string yerine ozel karakter sayacak yani . yi (.) nokta olarak yazmak istersek . kacmamiz gerekiyor.
-o bu zaten eslesen gruplari getir demek gibi birsey (addr🙂?([0-9].){3}[0-9]'
disindaki hersey strip edilecek
[0-9].){3}[0-9] su kisim 123.123.123.123 patternine uyan butun sayilarla eslesiyor yani
suradan donecek sonuc soyle birsey olmali
127.0.0.1\r\n192.168.0.100
linuxte lookahed ve lookbehind fixed length istedigi icin gelen sonucu birdaha filtreledim
grep -v '127.0.0.1'
-v flagida zaten eslesmeden sonraki sonuclari getir demek
donecek cevap boyle birsey
\r\n192.168.0.100
https://linuxhint.com/grep_egrep_regex/
https://linuxhint.com/most-common-grep-syntax/