Windows Powershell代码变量的数字顺序增量

时间:2018-07-07 02:28:35

标签: powershell

我是使用PowerShell的(新手)初学者,需要帮助输入代码,该代码将在输出的每一行中添加一个逗号和数字增量,这将是一个随机数。输出显示在文件中。

$file = "path to file"


for ($i=0; $i -le 4; $i++) {
    $a = Get-Random -Minimum 10 -Maximum 50
    Add-Content $file $a.ToString("0")
}

因此每个随机数的输出为1行,例如:

12
30
22
41.. etc

我希望它看起来像这样:

1,12
2,35
3,22
4,41

任何人都可以提供实现此目的的代码吗?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

我建议使用管道|)的PowerShell惯用解决方案:

1..4 | ForEach-Object { '{0},{1}' -f  $_, (Get-Random -Min 10 -max 50) } | Set-Content $file
  • 1..4使用范围运算符(..)创建一个从14的整数数组。

  • ForEach-Object为表示为自动变量{ ... }的每个输入对象(在这种情况下为整数)调用关联的脚本块($_):

    • '{0},{1}' -f $_, (Get-Random -Min 10 -max 50)使用字符串格式运算符(-f),其LHS是格式字符串,其中包含RHS值的位置占位符({0}是第一个参数的占位符。 ..),以产生一个输出字符串,其中包含手头的整数,后跟逗号和随机数。
  • Set-Content将接收到的所有字符串保存到输出文件$file(使用默认的字符编码,在Windows PowerShell中为旧系统语言环境所隐含的“ ANSI”编码;请使用参数-Encoding进行更改)。

答案 1 :(得分:1)

尝试一下:

<input list="myInput" id="myInputId" value="">
<button id="myButton" onClick="testResults()">submit</button>

<datalist id="myInput">
<option id="AL">Alabama</option>
<option id="CA">California</option>
<option id="MI">Michigan</option>
<option id="TX">Texas</option>
<option id="WI">Wisconsin</option>
</datalist>

<p>State input: <span id="stateInput"></span></p>
<p>Node position of state input: <span id="stateNodePosition"></span></p>
<p>State node: <span id="stateNode"></span></p>
<p>Population node: <span id="populationNode"></span></p>