Biorąc pod uwagę wejścieDlaczego `grep -o` kończy się niepowodzeniem i jak powinienem obejść go?
echo abc123def | grep -o '[0-9]*'
na jednym komputerze (z GNU grep 2.5.4), to zwraca 123
, a na inny (z GNU grep 2.5.1) zwraca pusty ciąg. Czy jest jakieś wyjaśnienie, dlaczego grep 2.5.1 nie działa tutaj, czy jest to po prostu błąd? Używam w ten sposób grep -o
w skrypcie bash, który chciałbym móc uruchomić na różnych komputerach (które mogą mieć różne wersje grep). Czy istnieje "właściwy sposób", aby uzyskać spójne zachowanie?
Dlaczego chciałbyś skorzystać z wyrażenia regularnego, które może pasować do znaków zerowych? Spodziewam się, że pasuje do każdej linii, a nie tylko linii z cyframi. –