Se a sua entrada não tiver um número de sequência longo no segundo campo, tente:
$ sed -e 's|^[^,]*|#000000000&|;s|#[^,]*\(.\{9\}\),|,|;s|\([0-9]\{3\}\)|/|g;s|/\([^0-9]\)||;s|/$||' file
000/012/345,1s4c3v6s3nh6
123/456/789,9h5vgbdx34dc
000/000/012,7h4f45dcvbgh
001/234/567,09klijnmh563
Explicação
-
s|^[^,]*|#000000000&|: combinamos todas as coisas do início ao primeiro,, substituímos por um fabricante#e n números 0, em que n é o comprimento que queremos preencher. -
s|#[^,]*\(.\{9\}\),|,|: combinamos todas as coisas do marcador com o primeiro,, mas mantemos os últimos 9 caracteres antes de,, descartamos o restante. -
s|\([0-9]\{3\}\)|/|g: adicione uma/a cada 3 sequências de dígitos. -
s|/\([^0-9]\)||;s|/$||: se depois que/não for um número ou/estiver no final da linha, nós o removeremos.
ou mais fácil com perl :
$ perl -F',' -anle '
$F[0] = sprintf "%09s", $F[0];
$F[0] =~ s|.{3}|$&/|g;
chop $F[0];
print join ",",@F;
' file
000/012/345,1s4c3v6s3nh6
123/456/789,9h5vgbdx34dc
000/000/012,7h4f45dcvbgh
001/234/567,09klijnmh563