diff --git a/apps/knowledge/serializers/document.py b/apps/knowledge/serializers/document.py index 251514e7903..f1b2e8a399a 100644 --- a/apps/knowledge/serializers/document.py +++ b/apps/knowledge/serializers/document.py @@ -1637,7 +1637,8 @@ def batch_export_zip(self, instance: Dict, with_valid=True): response = HttpResponse(content_type="application/zip") zip_buffer = io.BytesIO() with TemporaryDirectory() as tempdir: - knowledge_file = os.path.join(tempdir, f"{knowledge.name}.xlsx") + safe_name = re.sub(r'[<>:"/\\|?*\x00-\x1f]', "_", knowledge.name).strip(" .") or "knowledge" + knowledge_file = os.path.join(tempdir, f"{safe_name}.xlsx") workbook.save(knowledge_file) for r in res: write_image(tempdir, r)