脚本未获取多行输入

时间:2019-12-16 09:29:09

标签: powershell

我有以下脚本,该脚本允许我在控制台上获取用户ID,然后检查相关用户的AD帐户的到期日期。收集ID的部分如下:

[array]$input = (Read-Host “Staff Numbers: ”).Split([System.Environment]::NewLine, [StringSplitOptions]::RemoveEmptyEntries) 

但是,当我将用户的职员编号粘贴到控制台时,它只会读取第一行并结束脚本。第一个之后的其他数字仅显示在控制台后面。

有什么不好的主意吗?

1 个答案:

答案 0 :(得分:1)

根据{{​​3}},

Read-Host应该只占一行:

  

Read-Host cmdlet从控制台读取一行输入

如果您想获得多行,则可以:

  • 从文件导入数据
  • 在循环the docs中使用Read-Host
    $arr = @(While($line=(Read-Host).Trim()){$line})
    
  • 按照建议的like here用其他任何字符(逗号,分号等)分隔值
    $userInput = read-host "Enter a list of comma separated hostnames"
    $data = $userInput.split(",").trim(" ")