Existe um equivalente a 'cut -c' no Windows cmd.exe?

Eu tenho alguns arquivos de tamanho de linha fixa, tamanho de campo fixo que eu preciso extrair informações. Nornmally, eu usaria o Cygwin (cut et al), mas isso não é uma opção neste caso devido às políticas de gerenciamento (tonto) que não posso mudar. istotem para ser feito usando o conjunto de ferramentas padrão do XP incluído no Windows.

Eu preciso extrair os 10 caracteres no deslocamento 7 e 4 caracteres no deslocamento 22 (baseado em zero) e enviá-los para um arquivo, mas com uma ligeira torção:

O primeiro campo pode ter um sinal negativo, positivo ou nenhum sinal (no início ou no final). O sinal deve ser movido para a frente, ou removido totalmente se for positivo.O segundo campo deve ter espaços iniciais e finais removidos.

Por exemplo:

          1         2         3          <- ignore (these lines not in file,)
0123456789012345678901234567890123456789 <- ignore ( here only for info.)
xxxxxxx    15.22-yyyyyABCDzzzzzzzzzzz...
xxxxxxx   122.00+yyyyy XX zzzzzzzzzzz...
xxxxxxx         9yyyyyYYY zzzzzzzzzzz...

deve produzir (< indica fim de linha):

-15.22,ABCD<
122.00,XX<
9,YYY<

questionAnswers(3)

yourAnswerToTheQuestion