Powershell:删除arraylist中的重复条目

时间:2019-03-05 05:58:57

标签: powershell arraylist unique powershell-v2.0

在Powershellscript中,我从Arraylist中的csv文件中读取了一些数据。

第二步,我消除了没有特定字符的每一行: final ImageView imageView = (ImageView) findViewById(R.id.cir); final ImageView topLayout = (ImageView) findViewById(R.id.layoutTop); imageView.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { Log.i("IMAGE", "motion event: " + event.toString()); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: { imageView.setImageResource(R.drawable.cir_press); imageView.bringToFront(); break; } case MotionEvent.ACTION_UP: { imageView.setImageResource(R.drawable.cir); topLayout.bringToFront(); break; } } return false; } });

在第三步中,我想消除每个重复项。

我的列表示例:

(

我使用以下脚本:

Klein, Jürgen (Klein01); salesmanagement national 
Klein, Jürgen (Klein01); salesmanagement national 
Meyer, Gerlinde (Meyer02); accounting 
Testuser 
Admin1
Müller, Kai (Muell04); support international

但是变量$Arrayusername = New-Object System.Collections.ArrayList $NewArraylistuser = New-Object System.Collections.ArrayList $Arrayusername = Get-Content -Path "C:\Temp\User\Userlist.csv" for ($i=0; $i -le $Arrayusername.length; $i++) { if ($Arrayusername[$i] -like "*(*") { $NewArraylistuser.Add($Arrayusername_ads[$i]) } $Array_sorted = $NewArraylistuser | sort $Array_sorted | Get-Unique } 仍然具有重复项。 我没有发现错误。

1 个答案:

答案 0 :(得分:1)

关于如何更改代码的一些想法:

  1. 使用现有命令通过定界符;导入.csv文件。
  2. 使用Where-Object过滤输出,以仅包含带有(的名称。
  3. 仅使用Select-Object选择唯一的对象,或者如果要对对象进行排序,请使用具有相同参数的Sort-Object

类似的事情应该起作用:

Import-csv -Delimiter ';' -Header "Name","Position" -Path "C:\Temp\User\Userlist.csv" | Where-Object {$_.Name -like "*(*"} | Sort-Object -Unique -Property Name,Position