Convertendo arquivos XSL para arquivos CVS na linha de comando

1

Eu tenho um conjunto de arquivos XLS que eu quero converter para .CSV mantendo o nome base original. Eu achei que este código funcionou melhor:

unoconv -f csv *.xls  

também há outras formas neste link convertendo xls para csv mas eu queria manter o mesmo nome.

Depois de um tempo, ele me mostrou esse erro

Failed to connect to /usr/lib/libreoffice/program/soffice.bin (pid=7779) in 6 seconds.
Connector : couldn't connect to socket (Success)
Error: Unable to connect or start own listener. Aborting.

Eu tentei reinstalar mas não funciona. Eu gostaria de qualquer ajuda onde eu possa manter o nome do arquivo xls e convertê-lo em csv. Estou usando este código em um ambiente R e acessando o terminal do sistema.

    
por Venkat 14.07.2014 / 13:09

1 resposta

3

Eu começaria fechando o LibreOffice. Isso causou problemas para mim no passado com unoconv , mas tem sido difícil prever. É mais fácil deixar apenas unoconv ativar seu próprio servidor de processamento. Se você acha que fez isso, mas está vendo o mesmo erro, execute killall soffice.bin e tente novamente.

Em termos de manter o mesmo nome, ele faz isso por padrão.

unoconv -f csv filename.xls

Isso criará um arquivo filename.csv . Na minha opinião, isso é realmente desejável porque você sabe o formato do arquivo (e você não tentará fazer coisas bobas por acidente). E isso também funciona para curingas:

$ ls *.xls
ie_data.xls  QTL_Sample_data.xls  WBC_FTTC_Price_List_Entry_16-Aug-10.xls

$ unoconv -f csv *.xls 

$ ls *.csv
ie_data.csv  QTL_Sample_data.csv  WBC_FTTC_Price_List_Entry_16-Aug-10.csv

Então você só precisa colocá-lo em prática e ele fará o que quiser.

    
por Oli 14.07.2014 / 14:07