-o
(nur den passenden Teil der Zeile drucken) ist auf BSD und GNU grep gleich.
-P
(Verwenden Sie Perl-kompatible reguläre Ausdrücke, auch "PCRE" genannt) ist spezifisch für GNU grep.
Glücklicherweise verwendet Ihr regulärer Beispielausdruck keine PCRE-spezifische Syntax. Es entspricht aber auch nicht der klassischen Unix-RE-Syntax. Es braucht "erweiterte" reguläre Ausdrücke (EREs). Sie können dies in BSD grep durch Hinzufügen -E
oder Anrufen egrep
anstelle von erhalten grep
.
curl -s https://www.grc.com/passwords.htm | grep -oE '[a-zA-Z0-9]' | tail -n1 | cut -c1-63
Wenn Sie über andere REs verfügen, für die wirklich PCRE erforderlich ist, können Sie GNU grep (und, wenn Sie möchten, die überwiegende Mehrheit aller anderen beliebten Open-Source-Softwarepakete) über Paketmanager wie Homebrew, MacPorts oder Fink installieren.