O que os diletos amigos já abordaram faz todo o sentido.
Primeiro sua primeira chamada foi muito vaga, o que não dava margem a uma interpretação do que queria, então é bom sempre no começo dizer o que tem, o que deseja obter e o que tentou, ou esclarecer logo de cara que não sabe por onde começar.
As referências de pesquisas e consultas citadas pelos mesmos concordo totalmente e endosso, todavia entendo sua situação de estar perdido como "um cachorro em dia de mudança".
O que vou sugerir é que antes tente avaliar se o programa gerador do arquivo não pode ser mofificado para deixar num formato mais amigável e "organizado". Os arquivos csv são bons, porém são muitos permissivos o que pode gerar problemas na extração de dados. A culpa normalmente é do programa gerador do arquivo.
Se isto não for possível analise o padrão do arquivo para que possa planejar sua rotina. Particularmente eu consigo ver uma padrão que pode ser parseado e depois remodelado para o formato final que deseja. Esse caso é muito similar ao processo de ETL usado em bancos de dados.
Até tenho algumas dicas que posso lhe passar, mas tente ao menos formar uma idéia. E nem precisa ser com Shell Script, usar Perl, Python, Ruby, PHP ou qualquer outra linguagem que domine pode ser suficiente.
Se ainda assim não conseguir, entre em contato de novo.