我目前正在尝试创建一个select-string命令来确定我公司的用户是否仍然出现在某些目录中。我当前的命令如下:
Select-String -path "C:\filepath\*.csv" -Pattern "<string>" |
Format-Table -Property LineNumber,Line,Path -Wrap |
Out-File "C:\outfile.txt"
当前命令意味着每次运行脚本之前我都需要更改Pattern参数的内容。我想要做的是在运行脚本时请求输入字符串。我是否可以添加一个while循环来请求用户输入?
由于
答案 0 :(得分:1)
将其添加到脚本的开头:
Param(
[Parameter(Mandatory = $True)]
[System.String]
$Pattern
)
Select-String -Path C:\filepath\*.csv -Pattern $Pattern |
Tee-Object -FilePath C:\outfile.txt |
Format-Table -Property LineNumber, Line, Path -Wrap
当您调用脚本时,该属性会确保您为-Pattern
提供参数。如果您希望此属性不为空([ValidateNotNullOrEmpty()]
)等,则可以添加更多属性。
顺便说一句,从不管格式化。