powershell使用/IN执行appcmd<;可怜虫

powershell使用/IN执行appcmd<;可怜虫,powershell,appcmd,Powershell,Appcmd,我正在构建一个ps1文件,以便通过appcmd创建我的所有IIS站点、虚拟目录和应用程序池。我使用appcmd list/xml从主机获取设置,并将它们保存到配置文件中。我试图让powershell执行appcmd命令的内容 appcmd add apppool /IN < pathtoFile.xml 我得到: PS C:\temp\deployments> .\createIISSetup.ps1 Expressions are only allowed as the fi

我正在构建一个ps1文件,以便通过appcmd创建我的所有IIS站点、虚拟目录和应用程序池。我使用appcmd list/xml从主机获取设置,并将它们保存到配置文件中。我试图让powershell执行appcmd命令的内容

  appcmd add apppool /IN < pathtoFile.xml
我得到:

PS C:\temp\deployments> .\createIISSetup.ps1
Expressions are only allowed as the first element of a pipeline.
At C:\temp\deployments\createIISSetup.ps1:36 char:51
+     .$appcmd add apppool /IN | $pathToAppPoolSettings <<<< ;
    + CategoryInfo          : ParserError: (:) [], ParseException
    + FullyQualifiedErrorId : ExpressionsMustBeFirstInPipeline
PS C:\temp\deployments>\createIISSetup.ps1
表达式仅允许作为管道的第一个元素。
在C:\temp\deployments\createIISSetup.ps1:36 char:51

+.$appcmd add apppool/IN |$pathToAppPoolSettings一位同事给了我答案。只是在它的头上旋转:

type $pathToapppoolSettings | .$appcmd add apppool/IN; 

这非常有效。

欢迎使用StackOverflow。如果您提供了答案,请解释您的代码在做什么。
Get-Content appppols.xml | .\appcmd.exe add apppool /in
type $pathToapppoolSettings | .$appcmd add apppool/IN; 
Get-Content appppols.xml | .\appcmd.exe add apppool /in