ฉันกำลังพยายามสร้างงานที่กำหนดเวลาไว้บน Windows Server 2012 ซึ่งจะเรียกใช้สคริปต์ PowerShell ที่จะสร้างไฟล์เก็บถาวรของไดเร็กทอรีที่ระบุวันละครั้ง
อาร์กิวเมนต์ในการดำเนินการสคริปต์ควรเป็นดังนี้ (ผ่านบรรทัดคำสั่ง): .\CreateBackup.ps1 -BackupTarget "D:\SOFT_DIST\Production\_New_Build\Documentation\Windows Build Documentation\" -BackupDestination "D:\SOFT_DIST\Production\_New_Build\Documentation\Build Documentation Backups\Backups\" -DeleteOutdatedFiles $true - FileTTLวันที่ 30
สคริปต์ทำงานได้ดีอย่างสมบูรณ์ แต่ปัญหาคือเมื่อฉันป้อนอาร์กิวเมนต์ลงใน Task Scheduler ฉันได้รับข้อผิดพลาดที่ระบุว่า "D:\SOFT_DIST\Production_New_Build\Documentation\Build is not modified as the name of a cmdlet, function, script file, หรือโปรแกรมที่ใช้งานได้"
. โปรดทราบว่าในความเป็นจริง ไดเร็กทอรีนั้นถูกต้อง
ใน Task Scheduler นี่คือสิ่งที่ฉันป้อนภายใต้การดำเนินการ (ดึงจากไฟล์ส่งออก XML)
<Command>powershell.exe</Command>
<Arguments>
-ExecutionPolicy Bypass "D:\SOFT_DIST\Production\_New_Build\Documentation\Build Documentation Backups\CreateBackup.ps1"
-BackupTarget 'D:\SOFT_DIST\Production\_New_Build\Documentation\Windows Build Documentation\'
-BackupDestination 'D:\SOFT_DIST\Production\_New_Build\Documentation\Build Documentation Backups\Backups\'
-DeleteOutdatedFiles $true
-FileTTLDays 30
</Arguments>
จากสิ่งนี้ ฉันควรแก้ไขอย่างไรเพื่อให้สคริปต์นี้ทำงานผ่านงานที่กำหนดเวลาไว้ ฉันเชื่อว่าปัญหาอยู่ที่ช่องว่างในเส้นทางไดเร็กทอรี