Usando awk
:
awk '{print substr($18,1,12)}' input
Isso imprimirá os caracteres 1-12 da coluna 18. Isso pressupõe que seu arquivo de texto esteja separado por espaço em branco. O que provavelmente não é.
Para CSV:
awk -F, '{print substr($18,1,12)}' input
Com base no comentário da Steeldriver para adicionar essa saída a uma nova coluna:
awk '{$(NF+1) = substr($18,1,12)} 1' input > output
Infelizmente, isso cria um novo arquivo. gawk
pode modificar um arquivo, mas sua melhor aposta é criar um novo arquivo e depois remover o arquivo antigo.