如何在unix中将xlsx转换为csv

问题描述 投票:1回答:1

我有一个文本文件(abc.txt),它将具有文件名以及要转换为.csv的路径。

我说错了

选定的导出器不支持在一个文件中保存多个工作表。

仅保存当前工作表。但它也没有为一个标签保存。

以下是我写的查询

#!/bin/bash
CURRENT_DATE=date +'%d%m%Y'
Temp_Path=/my/first/path
cd $Temp_Path
#rm INBOUND_XLSX_FILES_.txt
find /my/second/path -name ".xlsx" >> "$Temp_Path/conversion.txt"
while IFS= read -r "f" ; do
    filename="${f%.*}"
    ssconvert "${filename}".xls
    "${filename}".csv
done < conversion.txt
bash unix ksh export-to-csv xlsx
1个回答
2
投票

对于具有多个工作表的.xlsx,您必须将每个工作表导出为单独的.csv文件。当然,不同的文件必须具有不同的名称。

你可以使用%n用数字命名工作表

ssconvert --export-file-per-sheet "$filename.xlsx" "$filename-%n.csv"

或使用%s按名称命名表格

ssconvert --export-file-per-sheet "$filename.xlsx" "$filename-%s.csv"

而不是--export-file-per-sheet你也可以使用速记符号-S具有完全相同的效果。

© www.soinside.com 2019 - 2024. All rights reserved.