使用 LibreOffice 將 xls 批次轉換為 csv

使用 LibreOffice 將 xls 批次轉換為 csv

以下工作正常:

"path_to_libreoffice\soffice.exe" --convert-to csv test.xls

但是,當我嘗試轉換資料夾中的所有 xls 檔案時,沒有任何反應:

"path_to_libreoffice\soffice.exe" --convert-to csv *.xls

我可以複製所有 xls 檔案名稱並這樣做,但為什麼不起作用*.xls

答案1

Linux 版本將透過 shell 將通配符擴展為匹配文件清單。

Windows 版本應該接受文件列表,但cmd不會為您擴展它。

最簡單的答案是使用一個for語句:

for %f in (*.xls) do "path_to_libreoffice\soffice.exe" --convert-to csv "%f"

請注意,需要在批次檔中%f替換為。%%f

這比提供文件清單效率低,其中所有轉換都在單一計劃中完成,而這對每個轉換執行單獨的計劃。

可以從通配符建立單一計劃和文件列表,但這需要複雜的腳本編寫。或者,您可以使用 Windows 連接埠的bash.

相關內容