奇怪的問題我今天看到,我不明白。 在ISE或Pshell中手動運行腳本和作爲工作有什麼區別嗎? 如果我運行它手動代碼不會引發錯誤 - 運行平穩:Powershell OnlyInJobError
Get-ChildItem "\\SERVER\S$\ROOT\DIR" -Recurse | Where {$_.creationtime -lt (Get-Date).AddDays(-35)} | Remove-Item -Force -Include *.conf
但是,如果我通過工作運行它,讓它的$錯誤導出到txtfile發生這種情況: 是權利我的跑步機不同於預定作業的權利?
Get-ChildItem : Zugriff verweigert
In Zeile:81 Zeichen:1
+ Get-ChildItem "\\SERVER\S$\ROOT\DIR" -Recurse | Where
{$_.creati ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-ChildItem], UnauthorizedA
ccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.Pow
erShell.Commands.GetChildItemCommand
Zugriff verweigert =拒絕訪問
哦,完全忘了告訴我的Windows權限。 通常我連接的服務器對每個人都是阻塞的 - 除了使用證書ofc登錄。但不知何故,我的手動powershell腳本能夠刪除和創建文件? 在「工作模式」中,它失去了能力。
編輯: 與Test-Path命令行開關相同。手動它表明我是真的還是假的。通過工作它會拋出一個錯誤。
編輯 - 同樣的問題完全不同的命令行開關:
$username = "Administrator"
$password = cat C:\securestring.txt | convertto-securestring
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
New-PSDrive -Name Z -PSProvider FileSystem -Root \\Server\ROOT -Credential $cred -Persist
test-path 'Z:'
Remove-PSDrive -Name Z -PSProvider FileSystem
這工作!
這不:
$jobname = "Test5"
$JobTrigger = New-JobTrigger -Daily -At "00:18 PM"
$MyOptions = New-ScheduledJobOption -ContinueIfGoingOnBattery -HideInTaskScheduler -RunElevated
Register-ScheduledJob -name "$jobname" -scriptblock {
$username = "Administrator"
$password = cat C:\securestring.txt | convertto-securestring
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
New-PSDrive -Name Z -PSProvider FileSystem -Root \\Server\ROOT -Credential $cred -Persist
test-path 'Z:'
Remove-PSDrive -Name Z -PSProvider FileSystem
} -trigger $JobTrigger –ScheduledJobOption $MyOptions
「如果我通過作業運行」?怎麼樣 ?開始工作,使用任務計劃程序,還有其他的東西? –
@Kayasax Register-ScheduledJob -name「test」-scriptblock {$ SCRIPT} -trigger $ JobTrigger -ScheduledJobOption $ MyOptions – XXInvidiaXX