Powershell脚本在虚拟机上作为定时任务



我编写了一个简单的脚本,将文件名中包含特定子字符串的文件从一个文件夹移动到另一个文件夹。

$Source = Get-ChildItem -Path "C:source" -Filter *.xlsm                        
$Target = "C:target"                                           
$substring = 'copy'                                     
foreach ($file in $Source) {                                    
if($file.Name -match $substring){                           
Move-Item -Path $file.FullName -Destination $Target -Force      
}
}

我想在VM上自动化它。它的工作很好,当我手动运行它,并通过任务调度程序,当我登录虚拟机,但是,当我切换到"运行是否登录或注销"在任务调度程序(脚本属性)它不会工作。我用以下参数运行它:

-noprofile -executionpolicy unrestricted -noninteractive -file "path to my script"

任何想法?

当选项"无论用户是否登录";,则计划任务在另一个会话上运行。

表示不能访问映射的网络驱动器!

因此,您需要在脚本中映射驱动器或使用完全限定名(即服务器名共享名)

更多细节也在这里

最新更新