排序CSV powershell脚本删除重复,保留第3列中具有特殊值的脚本

68de4m5k  于 2023-01-06  发布在  Shell
关注(0)|答案(1)|浏览(136)

如何删除csv文件中的双条目,并在其中一列中保留具有特殊值的条目?
示例:我得到了一个csv
姓名;员工编号;访问权限
最大值; 123456;只读
波塔; 133556;写入
乔尼; 161771;只读
最大值; 123456;写入
我想最后说:
姓名;员工编号;访问权限
最大值; 123456;写入
波塔; 133556;写入
乔尼; 161771;只读
我尝试了Get-ContentSelect-Object-unique,但这并不能解决只保留Accessrights属性中值为"write"的对象的问题,所以我一点头绪都没有

watbbzwu

watbbzwu1#

可以组合使用排序和分组....

@'
Name;Employeenumber;Accessrights
Max;123456;ReadOnly
Berta;133556;Write
Jhonny;161771;ReadOnly
Max;123456;Write
'@ |
    ConvertFrom-Csv -Delimiter ';' |
        Sort-Object -Property Name, Accessrights -Descending |
            Group-Object -Property Name |
                ForEach-Object {
                    $_.Group[0]
                }

相关问题