我有一个用户信息数据库,但我想将名为firstName
的列的第一个字符设置为大写字母。我尝试在for-each循环中调用脚本中的列名来使用Get-Culture类来隐藏它,但是我的方法不起作用,我该如何完成这个转换呢?
$UserList = Import-Csv C:\Users\Administrator\Desktop\salesdbs.csv
$UserList | Select-Object -First 100 | Format-Table -AutoSize
$UserList = foreach ($firstName in $UserList) {
$UserList = (Get-Culture).TextInfo.ToTitleCase($UserList)
}
Echo "$UserList"
答案 0 :(得分:2)
试试这个:
$UserList = Import-Csv C:\Users\Administrator\Desktop\salesdbs.csv
foreach ($row in $UserList) {
$row.firstName = (Get-Culture).TextInfo.ToTitleCase($row.firstName)
}
答案 1 :(得分:1)
我无法从OP确定CSV文件的结构(架构)。我猜每行都有多列,其中一列叫做FirstName。如果这不正确,请使用CSV文件的架构更新OP。
试试这个:
$UserList = Import-Csv C:\Users\Administrator\Desktop\salesdbs.csv
$UserList | Select-Object -First 100 | Format-Table -AutoSize
for ($ndx = 0; $ndx -lt 100; $ndx++) {
$userlist[$ndx].firstname = (Get-Culture).TextInfo.ToTitleCase($userlist[$ndx].firstname)
}
Echo "$UserList"