¿Cómo uso sed para encontrar un posible asterisco ? en una string?

Intento escribir un command sed para que reemplace un posible asterisco al comienzo de una cadena (es para cambiar el nombre de un grupo de twigs git al mismo time).

Mi git branch devuelve líneas similares a estas:

  old-12345 * old-23456 old-34567 master 

Quiero que Sed emita cada línea del resultado anterior que tenga como viejo:

 new-12345 new-23456 new-34567 

Supuse que uno de los siguientes funcionaría:

 $ echo "* old-12345" | sed 's/\*?\s*old-\(\d*\)/new-\1/' $ echo "* old-12345" | sed 's/[*]?\s*old-\(\d*\)/new-\1/' 

pero lamentablemente no hizo nada. Quiero tener \*? o [*]? ya que la git branch solo pone el * lado de la twig en la que estoy actualmente. ¿Por qué no es el ? trabajando como espero?

testing esto

 echo "* old-12345" | sed 's/.*old-\(\d*\)/new-\1/'