当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell加入|了解PowerShell加入的各种方法

作者:精品下载站 日期:2024-12-14 04:48:59 浏览:14 分类:玩电脑

PowerShell加入|了解PowerShell加入的各种方法


[玩转系统] PowerShell加入|了解PowerShell加入的各种方法

PowerShell 加入简介

join cmdlet 用于将多个字符串连接成单个字符串。在串联操作期间保留多个字符串的顺序与将它们传递给 cmdlet 的顺序相同。 Join cmdlet 还用于将管道对象中存在的文本转换为单个字符串值。本文将详细解释 PowerShell 中的 join cmdlet、其语法和用法以及适当的示例。

语法:

连接运算符的基本语法如下

-Join <String1[]> <String2[]> <String2[]>  -Join <Delimiter>

其中string1、string2、string3代表需要合并的各个字符串。分隔符表示连接的字符串之间应出现的字符。如果未指定值,则 PowerShell 使用“ ”。

以下是其他可用的语法

Join-String [[-Property] <PSPropertyExpression>]    [[-Separator] <String>]    [-OutputPrefix <String>]    [-OutputSuffix <String>]    [-UseCulture]    [-InputObject <PSObject[]>]    [<CommonParameters>]
Join-String   [[-Property] <PSPropertyExpression>]    [[-Separator] <String>]    [-OutputPrefix <String>]    [-OutputSuffix <String>]    [-SingleQuote]    [-UseCulture]    [-InputObject <PSObject[]>]   [<CommonParameters>]
Join-String   [[-Property] <PSPropertyExpression>]    [[-Separator] <String>]    [-OutputPrefix <String>]    [-OutputSuffix <String>]    [-DoubleQuote]    [-UseCulture]    [-InputObject <PSObject[]>]    [<CommonParameters>]
Join-String    [[-Property] <PSPropertyExpression>]    [[-Separator] <String>]    [-OutputPrefix <String>]    [-OutputSuffix <String>]    [-FormatString <String>]    [-UseCulture]    [-InputObject <PSObject[]>]    [<CommonParameters>]

对于 Join-String cmdlet,如果用户未指定任何值,则 PowerShell 使用的默认分隔符是 $OFS。如果指定了属性名称,则可以将该属性的值转换为字符串,然后连接到字符串。脚本块也可以用来代替属性名称。如果这样做了,那么脚本块的结果将在连接之前转换为字符串。此 cmdlet 是最新的,作为 PowerShell 版本 6.2 的一部分发布

当逗号与连接运算符一起使用分隔符时,连接运算符具有更高的优先级。在这种情况下,仅考虑第一个字符串,以避免字符串必须括在括号中。

示例:

输入:

$test = "one", "two", "three", "four","five"
-join $test

输出:

PS C:\WINDOWS\system32> $test = "one", "two", "three", "four","five"
-join $test
onetwothreefourfive

参数:

  • 双引号:

该参数用于将每个管道对象字符串值封装在双引号内。该参数的数据类型为switch,默认值为false。该参数不接受管道输入,也不接受通配符。

  • 格式字符串:

这表示项目的格式结构。该参数的数据类型是字符串。 None 是该参数的默认值。该参数不接受管道输入,也不接受通配符。这是一个可选参数。

  • 输入对象:

这表示要连接的输入文本。它可以是变量或命令对象。该参数的数据类型是PSObject[]。该参数的默认值为none。此参数接受管道输入,但不允许使用通配符。这是一个可选参数。

  • 输出前缀:

这表示将在结果之前插入的文本。它可以包含特殊字符,例如换行符或制表符。该参数的数据类型是字符串。可以使用其别名 op 来引用它。 None 是该参数的默认值。该参数不接受管道输入,也不接受通配符。这是一个可选参数。

  • 输出后缀:

这表示将在结果之后插入的文本。 。它可以包含特殊字符,例如换行符或制表符。该参数的数据类型是字符串。可以使用其别名 os 来引用它。 None 是该参数的默认值。该参数不接受管道输入,也不接受通配符。这是一个可选参数。

  • 属性:

这表示将管道对象转换为字符串的对象。该参数的数据类型是 PSPropertyExpression。该参数被放置在第零位置。 None 是其默认值。不接受管道输入和通配符。这是一个强制参数。

  • 分隔符:

这表示需要插入从管道对象连接的文本之间的字符。一般为逗号(,)或分号(;)。它被放置在第一的位置。 None 是其默认值。不接受管道输入和通配符。这是一个强制参数。

  • 单引号:

此参数用于将管道对象的输出字符串值包装在单引号内。它的数据类型是switch。 None 是其默认值。不接受管道输入和通配符。这是一个可选参数。

  • 使用文化:

这使用当前区域性的分隔符作为项目分隔符的值。要查找此信息,请使用 Get-Culture).TextInfo.ListSeparator。该参数的数据类型是switch。 None 是其默认值。不接受管道输入和通配符。这是一个可选参数。

示例:

Write-Host "Welcome to powershell join example"
Write-Host "Demo of normal join"
$stringa="vignesh"
$stringb="Krishnakumar"
-join($stringa, $stringb)
Write-Host "Joining use a delimiter" -ForegroundColor Green
$stringa,$stringb -join " "
Write-Host "Joining using the semicolon delimiter"
$stringa,$stringb -join ";"
Write-Host "removing numbers from a string and join them using semi-colon" -ForegroundColor Green
$test="This123is67Vignesh5678Working15466From89Chennai"
Write-Host "Numbers are removed" -ForegroundColor Green
$test -split '\d+' -join ";"
Write-Host "Demo of addding a text to each string" -ForegroundColor Green
$test="Iam vig","from chennai","am a ","freelancer"
Write-Host "actual text is" $test
Write-Host "Stars are appended to the actual test" -ForegroundColor Green
$test -join "***"
Write-Host "Joining multi line strings" -ForegroundColor Green
$stringa=@"
Iam karthik
am 12 years
old
"@
$stringb=@"
Powershell is a
coll language
to learn
"@
-join ($stringa , $stringb)
Write-Host "Inserting a new new line before the join" -ForegroundColor Green
$stringa,$stringb -join "`n"

输出:

结论

因此,本文详细解释了 PowerShell 以及如何使用各种方法来实现它。本文还解释了与 join 命令相关的各种参数以及如何使用它们来实现不同的功能。要了解更多详细信息,建议编写并练习示例脚本。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯