【问题标题】:Invoke-Restmethod export to csv returns blank CSV fileInvoke-Restmethod 导出到 csv 返回空白 CSV 文件
【发布时间】:2016-12-01 14:54:04
【问题描述】:

我使用以下 PS1 脚本并能够将对象导出到 csv:

$secpasswd = ConvertTo-SecureString "password" -AsPlainText -Force 
$Cred = New-Object System.Management.Automation.PSCredential ('username', $secpasswd) 
$User = Invoke-RestMethod -Method 'Get' -uri "https://192.168.50.60/api/reports/v1/users" -Credential $Cred

$user.data | select-object 'user_name','email_id','user_status' | Export-Csv -path UserStatusTest2.csv -NoTypeInformation

上面的脚本运行良好,直到我在表中添加了有限的用户并且 CSV 文件包含了所有数据。但是,当我增加用户时,会创建一个空白 CSV。

我尝试了 Out-file,发现 out 数据大小超过 2 MB,可能是问题的原因。我不知道如何解决这个问题。请帮忙

【问题讨论】:

标签: powershell powershell-2.0 powershell-3.0


【解决方案1】:

.data 使用的可能问题

修改

$user.data | select-object 'user_name','email_id','user_status' | Export-Csv -path UserStatusTest2.csv -NoTypeInformation

通过

$user | select user_name, email_id, user_status | Export-Csv UserStatusTest2.csv -NoTypeInformation

【讨论】:

  • 我已经尝试过这种方法,但没有运气。我认为powershell对json序列化和字符串大小的反序列化存在限制。我从数据库中减少了一些条目,并确保返回的 json 字符串小于 2 MB。运行相同的 Powershell 脚本,可以看到数据已导出到 CSV 文件中。不知道如何解决这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-12
  • 2015-06-20
  • 2017-09-22
  • 2021-03-06
  • 1970-01-01
相关资源
最近更新 更多