powershell - 使用 Powershell 修改 CSV 内容

标签 powershell csv

我有一个 CSV 文件 Devices.csv,其中包含 IP 地址、设备名称、序列号、MAC 地址、用户名

Devices.csv 所有行中的 Users 列已预填充值 [未知]

代码...

{Import-CSV Devices.csv | Where-Object {$_.IPAddress -eq '192.168.2.124'} | Select-Object -last 1 | FT  IPAddress, devicveName, SerialNumber,  MACAddress, User -AutoSize }

....输出

IPAddress     deviceName     SNumber     MACAddress   User
---------     -----          -------     ----------   ----
192.168.2.124 ComputerA      1ABCDEFG    00xxYYbbCCdd [Unknown]   

我希望能够用从不同来源检索到的用户名替换 [未知] 文本。我可以使用 powershell 只更新 Devices.csv 中这一行的用户列,并保持 CSV 文件的其余部分不变吗?

谢谢,布莱恩

最佳答案

$csv = Import-CSV Devices.csv
$csv | Where-Object {$_.IPAddress -eq '192.168.2.124'} | Select-Object -Last 1 | ForEach-Object {$_.User = $user}
$csv | Export-Csv Devices.csv -NoTypeInformation

关于powershell - 使用 Powershell 修改 CSV 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20470112/

相关文章:

Java:Apache Poi 的 Excel 到 csv 日期转换问题

Python - 使用 csv writer 后 csv 文件为空

powershell - Powershell在Active Directory中查询用户

powershell - 在 PowerShell 中等待所有子进程完成

powershell - 延迟忽略CTRL + C-Powershell

csv - 如何动态获取结构中的字段

php - 使用 php 将 mysql 表导出到 csv(不选择输出文件)

c# - Powershell 自定义 cmdlet 在标准方法的实现之外调用 WriteVerbose

powershell - 文件散列/校验和值是否不区分大小写?

email - Powershell:如何为电子邮件格式化 Get-Childitem?