Start-Process参数在Function

时间:2016-10-20 11:33:44

标签: powershell

好的,所以我正在寻找一种在ISE中运行当前脚本的快速方法,我正在外部PS窗口中进行操作 - 它将由团队使用,因此我想制定格式化并且菜单选项正确显示等

这会在ISE中找到当前的标签文件脚本:

$ArgList = $psISE.CurrentFile.FullPath

这将启动一个新的Powershell窗口并运行脚本(在case脚本的路径中有空格的情况下构造的文件参数):

start-process -FilePath powershell.exe -ArgumentList "-file `"$($ArgList.path)`""

连续运行这两个并以交互方式正常运行

问题是,如果我在这样的函数中运行这两个:

Function ISERunInNewWindow {
$ArgList = $psISE.CurrentFile.FullPath
start-process -FilePath powershell.exe -ArgumentList "-file `"$($ArgList.path)`""
}

...它产生了这个错误:

处理-File''失败:该路径不是合法形式。为-File参数指定有效路径。

我知道我必须遗漏一些显而易见的东西,但由于我不经常使用Powershell而有任何想法,所以我不知道了吗?

1 个答案:

答案 0 :(得分:0)

Ok - for anyone's info - it WAS something obvious as suspected.

Amending this:

start-process -FilePath powershell.exe -ArgumentList "-file `"$($ArgList.path)`""

To this:

start-process -FilePath powershell.exe -ArgumentList "-file `"$($ArgList)`""