Tôi đang sử dụng một tập tin thực thi để sao lưu. Tôi chuyển các tùy chọn đến một hàm gọi gói thực thi. Điều này hoạt động trừ khi các tham số chứa khoảng trắng. Đây là mã có liên quan:tập tin batch: truyền tham số với khoảng trắng để hoạt động
SET TARGET="%SAVEDIR%\XP.User.Documents.rar"
SET FILES="%DIRUSER%\Eigene Dateien\*"
SET EXLUCDE="%DIRUSER%\Documents\CDs"
call:funcBackup %TARGET% %FILES% %EXLUCDE%
:funcBackup
SET TARGET=%~1
SET FILES=%~2
SET EXCLUDE=%~3
echo."%PACKER% a -r -x"%EXCLUDE%" "%TARGET%" "%FILES%""
::call %PACKER% a -r -x"%EXCLUDE%" "%TARGET%" "%FILES%"
goto:eof
Trên XP (phiên bản tiếng Đức)% DIRUSER% mở rộng để "Dokumente und Einstellungen"
Trong trường hợp mục tiêu là chính xác, nhưng FILES == "Dokumente" và exclude = = "und", có nghĩa là tập lệnh không thành công do khoảng trắng trong% DIRUSER%.
Làm cách nào để khắc phục sự cố này?