답변:
in2csv
csvkit
패키지 에서 다음에 대한 --names
또는 -n
옵션을 제공합니다 . [ Source ]
-n, --names Display sheet names from the input Excel file.
귀하의 예에서 명령은 다음과 같습니다.
in2csv -n file1.xls
이 기능은 csvkit
1.0.2에서 추가되었으며 Bionic 이전 릴리스 의 공식 패키지 소스 에서는 제공되지 않습니다 . Xenial을 실행중인 경우 다음 중 하나를 수행해야합니다.
pip
함께 설치
sudo pip install csvkit
최신 버전을 구하십시오.
sudo apt remove python3-csvkit
하고 새로운 패키지를 설치하고, 바람직하게는 packages.ubuntu.com 또는 github.com/wireservice/csvkit/tree/1.0.2 에서 설치 합니다. 이 커밋에“1.0.2”태그가 추가 된 기능 이므로이 버전의 모든 버전에이 옵션이 있어야합니다.
in2csv
있음을 옵션과 다른 방법으로 호출 /path/to/new/in2csv
된 경우 호출 합니다. -n
/usr/bin/in2csv
sudo apt remove python3-csvkit
새로운 것을 설치하고 사용 했다. 래퍼 기능은 매우 유용합니다.
in2csv
더 간단한 옵션이지만 누군가 유용하다고 생각되는 경우에 대비해 두겠습니다. xlhtml
XLS 파일을 HTML 또는 XML로 변환 하는 멋진 명령이 있습니다 . XML이 있으면 다양한 XML 처리 도구를 사용하여 다양한 쿼리를 수행 할 수 있습니다. 이 경우 :
$ xlhtml -xml ~/foo.xls | xmlstarlet sel -t -m '//pagetitle' -v . -n
Sheet1
Sheet2
xlhtml
생성 하는 XML 은 다음과 같습니다.
<?xml version="1.0" encoding="iso-8859-1" ?>
<excel_workbook>
<sheets>
<sheet>
<page>0</page>
<pagetitle>Sheet1</pagetitle>
<firstrow>0</firstrow>
<lastrow>11</lastrow>
<firstcol>0</firstcol>
<lastcol>0</lastcol>
따라서 시트 이름의 경우 사용한pagetitle
노드를 쿼리 할 수 있습니다 .xmlstarlet
in2csv
부족한 버전 이-n
있습니다. 이상한, 최신을 얻는 방법을 알아 내려고하지만 csvkit에 문제가 있고 오래된 것을 제거하는in2csv
... sigh