Invoke-Formatter

根据输入设置或默认设置设置脚本文本的格式。

语法

Invoke-Formatter
      [-ScriptDefinition] <string>
      [[-Settings] <Object>]
      [[-Range] <int[]>]
      [<CommonParameters>]

说明

Invoke-Formatter cmdlet 采用字符串输入并根据定义的设置对其进行格式设置。 如果未提供 设置 参数,则 cmdlet 将假定默认代码格式设置在 Settings/CodeFormatting.psd1中定义。

示例

示例 1 - 使用默认设置设置设置输入脚本文本的格式

$scriptDefinition = @'
function foo {
"hello"
  }
'@

Invoke-Formatter -ScriptDefinition $scriptDefinition

function foo {
    "hello"
}

示例 2 - 使用哈希表中定义的设置设置格式化输入脚本

$scriptDefinition = @'
function foo {
"hello"
}
'@

$settings = @{
    IncludeRules = @("PSPlaceOpenBrace", "PSUseConsistentIndentation")
    Rules = @{
        PSPlaceOpenBrace = @{
            Enable = $true
            OnSameLine = $false
        }
        PSUseConsistentIndentation = @{
            Enable = $true
        }
    }
}

Invoke-Formatter -ScriptDefinition $scriptDefinition -Settings $settings

function foo
{
    "hello"
}

示例 3 - 使用定义“.psd1”文件的设置设置设置输入脚本文本的格式

Invoke-Formatter -ScriptDefinition $scriptDefinition -Settings /path/to/settings.psd1

参数

-Range

应在其中设置格式的区域。 此参数的值必须是四个整数的数组。 这些数字必须大于 0。 四个整数按以下顺序表示以下四个值:

  • 起始行号
  • 起始列号
  • 结束行号
  • 结束列号
类型:Int32[]
Position:3
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-ScriptDefinition

要格式化的脚本的文本表示为字符串。 这不是 ScriptBlock 对象。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Settings

包含设置的设置哈希表或 PowerShell 数据文件(.psd1)的路径。

类型:Object
Position:2
默认值:CodeFormatting
必需:False
接受管道输入:True
接受通配符:False

输出

String

格式化的字符串结果。