创建了Powershell脚本,该脚本从X天之前的文件夹中删除文件(将X作为参数传递)并在任务计划程序中进行了安排。 以下是任务计划程序中“操作”下“添加参数”选项卡中提供的命令:
-Command "& 'C:\Temp\Test.ps1' -DaysOld '-200'"
Test.ps1:
Get-ChildItem -Path "/Temp" -File | Where-object {($._LastWriteTime lt (Get-Date).AddDays($DaysOld))| Remove-Item
以上操作将删除所有文件,而不考虑传递的值-200
。还尝试了File选项,什么都没有。
答案 0 :(得分:0)
在脚本的开头声明params
部分。好tutorial here。
现在,脚本需要类型为integer
的名为“ DaysOld”的参数。
somefile.ps1:
param(
[Parameter(Mandatory=$True,Position=1)]
[int]$DaysOld = 0
)
Write-Host $DaysOld
用法:
powershell.exe "& '.\somefile.ps1' -DaysOld -200"