Uma alternativa para sed para coisas simples como esta é tr :
top -p $(pidof program | tr ' ' ',')
tr também pode manipular facilmente um número variável de espaços:
tr -s ' ' ','
Além disso, se você tiver disponível, pgrep pode funcionar bem aqui:
top -p $(pgrep -d , program)
Certifique-se de deixar um espaço entre -d e , , pois a vírgula é o argumento (o deliminador).
Além disso, observe que o pgrep retornará todos os resultados de "programa", então se você tiver um processo chamado "program-foo", ele também será retornado (daí o nome pgrep).