在 Windows Server 2012 上,我嘗試建立一個排程任務,該任務以網域使用者身分執行,將檔案從不同的伺服器複製到本機伺服器,然後如果修改日期早於 30 分鐘,則在本機刪除該檔案。
當我使用 Powershell 作為我自己的管理員帳戶運行它時,我的 powershell 腳本可以正常工作,並且完成時不會出現錯誤。
我創建了計劃任務,它也運行並複製文件,如果超過 30 分鐘則將其刪除,但任務繼續運行並且永遠不會完成。
事件日誌給出了提及「SeTcbPrivilege」的審核失敗錯誤。
網域使用者有權運行批次腳本。
Powershell 執行策略是無限制的。
我嘗試使用不同的參數配置任務,包括:
-ExecutionPolicy Bypass -file "C:\scripts\script01.ps1"
此任務設定為儲存密碼,如果未登入則以最高權限執行。
我還能錯過什麼?
我想該過程可能已完成,但任務計劃程序 GUI 只是沒有更新,但在這種情況下,我擔心審核失敗錯誤。
我認為 powershell 腳本並不重要,但這就是它的重點:
Copy-Item -Path \\server.example.com\directory\file.txt -Destination D:\directory\file.txt
Get-ChildItem -path D:\directory | where {$_.Lastwritetime -lt (date).addminutes(-30)} | remove-item