如何强制用户输入为MB而不是默认的KB / Decimal?
让我们说我有一个ValidateRange
min / max参数的函数。我希望用户以MB而不是KB输入数字,这可能吗?
示例:
Function Get-Bigfiles
{
param (
[parameter(Mandatory=$true)]
[ValidateRange(1MB,100MB)] $Size
)
Get-ChildItem C:\Windows\System32 | `
Where-Object {$_.Length -gt $Size -and !$_.PSIscontainer}
}
答案 0 :(得分:5)
用户输入没有附带任何单位。 5
是5.它既不是5升也不是5磅,也不是5 MB也不是KB。
如果你想输入150平均150 MB,那就没关系。当您检查以字节为单位的filesize时,您需要将150乘以1024以使其具有相同的KB数和1024再次具有字节数。