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

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

作者:精品下载站 日期:2024-12-14 05:00:32 浏览:14 分类:玩电脑

PowerShell 新线 |新行方法在 PowerShell 中如何工作?


[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

PowerShell换行符的定义

PowerShell 换行功能是将新行添加到数据输出的方式,例如将多行结果存储在文件中、发送包含多行内容的电子邮件,或者有时在代码中添加新行,以便用户可以通过使用 PowerShell 使用的不同语法以及通过使用某些语法或函数将输出格式化为多行来检索输出的过程来正确读取代码和输出。

语法:

新行没有这样的语法,但我们使用特定的关键字作为换行符,例如 (`) 和回车符 (`n) 作为新行。

还有下面的方法。

[System.Environment]::NewLine

新的行方法在 PowerShell 中如何工作?

默认情况下,PowerShell 始终在新行中格式化输出。例如,在下面检索服务的命令中,您将始终在新行中获取每个服务。

Get-Service | ft -AutoSize

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

当您连接字符串时,它会连接字符串,不是在新行中,而是在同一行中。请参阅下面的字符串。

"Hi.." + "This is a continue line"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

要换行并开始新行,您需要使用回车语法 (`n)。

"Hi.." + "`nThis is a continue line"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

如果该行是单行,并且我们在中间添加`n,它也会分隔该行。

Write-Output "This is the first line. `nThis is the second line. `nThis is the third line"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

当您在任何编辑器中编写程序时,有时在一行中编写冗长的代码会变得很麻烦,但使用语法 (`),您可以将代码分成多行到任何 PowerShell 编辑器中。

例如,我们有下面的命令,它检索磁盘信息并执行一些操作

对磁盘大小的数学运算如下所示。

Get-CimInstance -ClassName Win32_LogicalDisk | where{$_.DriveType -eq '3'} | Select DeviceID, VolumeName, @{N='TotalSize(GB)'; E={[Math]::Round(($_.Size)/1GB,2)}}, @{N='FreeSpace(GB)'; E={[Math]::Round(($_.FreeSpace)/1GB,2)}}

这是一个单行命令,用于检索逻辑磁盘信息以及总大小和可用大小(以 GB 为单位),但是当我们将其写入单行时,新程序员无法正确理解它,因此我们最好使用 (`) 符号将命令分成多行。

Get-CimInstance -ClassName Win32_LogicalDisk | where{$_.DriveType -eq '3'} `
| Select DeviceID, VolumeName, `
@{N='TotalSize(GB)'; E={[Math]::Round(($_.Size)/1GB,2)}}, `
@{N='FreeSpace(GB)'; E={[Math]::Round(($_.FreeSpace)/1GB,2)}}

上述两个命令的输出。

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

即使您在 PowerShell 控制台中添加重音符号 (`),它也会为程序创建一个新行,并且下一行将以双箭头 >> 开头,意味着它正在等待命令继续。

Get-CimInstance win32_logicaldisk `

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

我们可以在控制台中使用多行编写磁盘信息检索命令,如下所示。

Get-CimInstance -ClassName Win32_LogicalDisk | where{$_.DriveType -eq '3'} `
| Select DeviceID, VolumeName, `
@{N='TotalSize(GB)'; E={[Math]::Round(($_.Size)/1GB,2)}}, `
@{N='FreeSpace(GB)'; E={[Math]::Round(($_.FreeSpace)/1GB,2)}}

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

示例

让我们讨论 PowerShell New Line 的示例。

示例#1:使用变量的新行。

如果您使用变量来存储行或字符串,并且当您连接多个变量时,您可以在中间添加回车符 (`n) 将它们分开。例如。

不使用回车语法,

$str1 = 'This is the first line'
$str2 = 'This is the second line'
$str1 + $str2

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

使用回车语法,

$str1 + "`n" + $str2

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

示例#2:使用 Split() 方法创建新行。

当我们使用字符串或任何文件内容时,如果我们需要使用某些特定字符将字符串拆分为多行,那么我们可以使用 split 方法来创建新行。例如,

$str = "This is the First line. This is the second line. This is the third line"
$str

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

我们将用 split 分隔上面的字符串并创建一个新行,如下所示。

$str.Split('.')

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

您可以在 split 方法中使用任何语法或关键字分隔行。

示例#3:使用字符串数组创建多行。

我们可以使用字符串数组,这是创建多行的最常见技术。如下图。
@"
这是第一行
这是第二行
这是第三行
"@

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

示例#4:使用字符串格式化方法。

我们可以使用字符串格式化方法将行与字符串或文件内容分开。下面显示了一个示例。

"This is the first line. {0}This is the second line.{0}This is the third line" -f "`n"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

您还可以使用系统。环境类使用 NewLine() 方法将字符串分成多行。

"This is the first line. {0}This is the second line.{0}This is the third line" -f [Environment]::NewLine

上述命令将产生与前一个命令相同的输出。

示例 #5:在文件中追加新行。

当您将内容添加到文件中并且想要将该行添加到文件的下一行时。您可以使用以下命令。我们有output.txt 文件,其内容如下。

Get-Content C:\Temp\output.txt

如果我们将内容添加到文件中而不使用转义字符,它将把新行连接到最后一行。

Add-Content C:\Temp\output.txt -Value "This is the fourth line"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

所以我们在这里添加转义字符(`n)来添加新行。

Add-Content C:\Temp\output.txt -Value "`nThis is the fourth line"

输出:

[玩转系统] PowerShell 新线 |新行方法在 PowerShell 中如何工作?

结论

每种编程语言(例如 Java、Python、C#、PowerShell 等)都有不同的方法来创建新行,这很有帮助,因为用户可能需要在输出之间(有时在代码内部)进行一些换行,并且始终建议使用换行符或新行进行输出以获得更好的可读性。

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

取消回复欢迎 发表评论:

关灯