Normalmente, o escape do caractere +
( \+
) resulta em um literal +
, não um modificador. Este não é o caso de sed
no Ubuntu 10.04, mas pode não estar no Solaris.
Meu melhor palpite é que isso é específico da implementação, então sed 's/[^0-9]\+//'
pode funcionar.
Você também pode tentar sed -r 's/[^0-9]\+//'
(onde -r
significa expressões regulares estendidas ). Funciona no Ubuntu 10.04.