【发布时间】:2021-09-01 04:56:00
【问题描述】:
我想编写一个用于使用记事本自动删除文件夹的 PowerShell 脚本,并且我还想向该脚本添加 2 个参数。每当我运行此脚本时,它都会询问路径和否。天旧文件。
Param1 - location of the folder
Param2 - no. Of days to keep
$param1 = Read-Host -Prompt 'location of the folder'
$param2 = Read-Host -Prompt 'no. of days to keep'
Get-ChildItem $param1 -recurse |
Where-Object {$_.LastWriteTime -lt (Get-Date).AddDays($param2)} |
Remove-Item
有没有办法在 PowerShell 脚本中传递参数?在我的代码中,param1 正在接受输入,但 param2 没有接受任何输入。
【问题讨论】:
-
运行时会出现 2 个提示输入要输入的参数。你是如何调用脚本的?
-
是的,出现 2 个参数提示,但 param2 的值没有更新任何内容。无论是 15 天还是 1000 天,这段代码总是删除文件,我想设置否。天。当我尝试使用 write-host 逐行打印此代码时,它只打印到第一个垂直条并更新 param1 但不更新 param2。
-
感谢 Lieven Keersmaekers 编辑此脚本。只有缩进错误。感谢您解决此问题。
标签: windows powershell parameter-passing powershell-2.0 powershell-3.0