以下工作正常:
"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
.