Ray*_*Ray 7 string powershell parameter-passing
我读过这篇文章,它并没有解决我的问题。
我有一个以空格分隔的字符串,比方说$MyString = "arg1 arg2"。假设我有一个名为 的命令行程序MyProgram,它接受任意数量的位置参数,因此它可以像MyProgram arg1 arg2. 然而,doingMyProgram $MyString不起作用,norMyProgram ($MyString -split ' ')也不起作用MyProgram $($MyString -split ' ')。我得到了同样的错误,基本上说它无法识别参数“arg1 arg2”,我猜这是因为它仍然认为它是一个包含空格的参数而不是两个参数。实际上,$MyString可能相当大并且是从文件中读取的。我该如何进行这项工作?
哦,我刚刚发现哈哈。我应该早点想到这一点;基本上,只需使用splatting以下对我有用:
$MyArray = $($MyString -split " ")
MyProgram @MyArray
说明:第一行将字符串转换为以空格(“”)分割的字符串数组;命令周围的符号$(...)捕获命令的输出,然后我将其分配给$MyArray. 然后,我没有使用$MyArray美元符号,而是使用它来将字符串数组放入 的参数中。$@MyProgram
| 归档时间: | 
 | 
| 查看次数: | 3111 次 | 
| 最近记录: |