IIS/Invoke-AppCmd.ps1
# Copyright 2012 Aaron Jensen # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. function Invoke-AppCmd { <# .SYNOPSIS Invokes appcmd.exe, the IIS command line configuration utility. .DESCRIPTION Runs appcmd.exe, passing all the arguments that get passed to `Invoke-AppCmd`. .EXAMPLE Invoke-AppCmd list site Peanuts Runs `appcmd.exe list site Peanuts`, which will list the configuration for the Peanuts website. #> [CmdletBinding()] param( [Parameter(ValueFromRemainingArguments=$true)] # The arguments to pass to appcmd. $AppCmdArgs ) Write-Verbose ($AppCmdArgs -join " ") & (Join-Path $env:SystemRoot 'System32\inetsrv\appcmd.exe') $AppCmdArgs if( $LastExitCode -ne 0 ) { Write-Error "``AppCmd $($AppCmdArgs)`` exited with code $LastExitCode." } } |