Menu Close

SecureCRT keyword highlighting

När man sitter mycket och felsöker i CLI så hjälper det avsevärt att få lite färg på väl valda objekt så att man enkelt hittar dessa nyckelord.

Keyword highlighting i SecureCRT kan använda sig utav regex och det är detta jag kommer att använda för att markera de ord jag vill. I denna artikel går jag igenom ett del av syntax-highlights som jag använder.

Notera att ordningen på de olika uttrycken är väldigt viktiga i SecureCRT. När ett ord har matchat av ett tidigare uttryck så kan inte något nytt uttryck matcha på samma sak. Detta innebär att om du till exempel vill matcha en hel rad baserat på vad denna rad börjar på , så bör du ha den raden högt upp i din syntax-fil.

Att kunna markera upp en ip-adress är bland det viktigaste (eller snyggaste). Jag använder följande regex för att markera ip-adresser:

\b(?:\d{1,3}.){3}\d{1,3}\b

Nyckelord kopplade till FortiOS:

\sset\s|edit|next|/^end$/|accept|/^up$/|\sOK|Uptime

^Version:(.)|^Serial-Number:(.)|^config(.)|(vdom)|^Mode:(.)|\sstatus|^System time(.*)

^end|\send|\sdisabled\s|down$|unset\s

För att göra det enklare att följa en paketsniffer så har jag också med lite highlights för att göra detta:

\w+(?=\s+in\s)|\w+(?=\s+out\s)
\sout\s
\sin\s
\d+(?=\s+->)|\d+(?=:+\s)|(?<=,)\s\w+

För att även göra routingtabellen enklare att särskilja (utan att använda filterkommandon) så har jag lagt till följande:

(static)|^S[*]|\sS\s
(\sN1\s)|(\sO\s)|(\sIA\s)|(\sN2\s)|(\sN1\s)|(\sO\s)|(\sIA\s)|(\sE1\s)|(\sN1\s)|(\sO\s)|(\sIA\s)|(\sE2\s)|(OSPF)
(?<=(C -))\s\w+|^C\s|\sC\s
(?<=(B -))\s\w+|^B\s|\sB\s

Nu har jag inte stor routingtabell i mitt labb i dagsläget, men så här ser highlighten ut nu:

Du hittar min nuvarande version av syntax-filen på min Github.
Mer information om hur du lägger in syntaxfil hittar du här

Vill du lära dig mer om regex eller bara se vad mina olika rader ovan gör så besök https://regex101.com/
Där hittar du både information om regex, hur det fungerar och kan även få hjälp med att matcha din kod mot dina nyckelord som du vill belysa lite extra.