it-swarm.com.de

Wie zeige ich einen Unterschied zwischen der Verwendung von '*', '+' und '?' in grep?

Ich verstehe das

'*' : The preceding item will be matched zero or more times.
'?' : The preceding item is optional and will be matched, at most, once.
'+' : The preceding item will be matched one or more items

Kann mir jemand ein Beispiel geben, wann es einen Unterschied bei der Verwendung von grep geben würde? Ich habe egrep verwendet, aber ich habe versucht zu prüfen, ob ich für diese Operatoren unterschiedliche Ausgaben generieren kann.

4
posixKing

ein Beispiel geben? Versuch es?

$ cat greppy
grp
grep
greep

null oder mehr e hier

$ egrep 'gre*p' greppy
grp
grep
greep

null oder eins e hier

$ egrep 'gre?p' greppy
grp
grep

ein oder mehrere e hier

$ egrep 'gre+p' greppy
grep
greep
12
Zanna