我有一个 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/