首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >格式帮助:最后一个变量没有按它应该出现的方式出现

格式帮助:最后一个变量没有按它应该出现的方式出现
EN

Stack Overflow用户
提问于 2016-06-01 12:37:39
回答 2查看 23关注 0票数 0

我已经写了一个代码,发送电子邮件给某人。当代码运行时,他们也要求在屏幕上打印数据。我使用Write-Host cmdlet如下所示。

代码语言:javascript
复制
Write-Host "server: $serverName `t ipaddress: $ipAddressValue `t process: $processName `t status: $statusString"

数据出现在PowerShell上,所有数据都是直线显示的,因为除了最后一个变量$statusstring之外,状态结果以不同的方式出现,并且与其他3个变量的顺序不同。

  • 进程: TestTrack服务器状态:运行
  • 进程:事件日志状态:运行
  • 进程: WMSVC状态:已停止
  • 进程: TFSJobAgent状态:运行
  • 进程: Dhcp状态:运行
  • 进程UI0Detect状态:已停止

有什么办法让我的地位成为一条直线吗?

EN

回答 2

Stack Overflow用户

发布于 2016-06-01 12:45:46

你似乎想要表格输出。为什么不创建对象并使用正确的格式化cmdlet?

代码语言:javascript
复制
$props = [ordered]@{
  server    = $serverName
  ipaddress = $ipAddressValue
  process   = $processName
  status    = $statusString.Trim()
}
$o = New-Object -Type PSObject -Property $props

从对象(或对象列表)中,可以创建如下字符串输出:

代码语言:javascript
复制
$o | Format-Table | Out-String

或者这样的HTML输出:

代码语言:javascript
复制
$o | ConvertTo-Html
票数 0
EN

Stack Overflow用户

发布于 2016-06-01 12:58:15

最佳选择:停止使用Write-Host。不能使用该cmdlet将输出控制为所有显示在一行上。您最好做一个定制的PSObject来构建输出,然后将它传递给Format-Table

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37568855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档