Soy consciente de usar in2csv
para guardar una hoja de trabajo en particular como .csv:
in2csv --sheet "sheet name" file1.xls > sheet-name.csv
Pero, ¿hay otras herramientas para imprimir los nombres de las hojas?
¿Quizás hay opciones con Perl?
command-line
csv
xls
csheth
fuente
fuente
in2csv
falta-n
. Extraño, tratando de descubrir cómo obtener lo último, pero teniendo problemas con csvkit y eliminando los viejosin2csv
... suspirosudo apt remove python3-csvkit
e instalaría uno más nuevo, preferiblemente desde packages.ubuntu.com , o bien desde github.com/wireservice/csvkit/tree/1.0.2 . La función se introdujo con este commit etiquetado como "1.0.2", por lo que cualquier versión a partir de ese momento debería tener esta opción.in2csv
eso llamadas/path/to/new/in2csv
en caso de que se llama con la-n
opción y la costumbre/usr/bin/in2csv
más.sudo apt remove python3-csvkit
, instalé el más nuevo y funcionó. La función de envoltura es muy útil sí!in2csv
es la opción más simple, pero la dejaré en caso de que alguien pueda encontrarla útil. Hay un buen comando llamadoxlhtml
para convertir archivos XLS a HTML o XML. Y una vez que tenga el XML, se pueden usar varias herramientas de procesamiento de XML para realizar una amplia variedad de consultas. En este caso:El XML que
xlhtml
genera es así:Entonces, para los nombres de las hojas, podemos consultar los
pagetitle
nodos, que uséxmlstarlet
.fuente