web hit counter
Powershell: eliminare linee duplicate da un file - Blog TechNet Italia - Site Home - TechNet Blogs

Blog TechNet Italia

Il blog italiano dedicato ai sistemisti e ai professionisti IT

Powershell: eliminare linee duplicate da un file

Powershell: eliminare linee duplicate da un file

  • Comments 2
  • Likes

Ciao a tutti.

Continuano i miei esperimenti con Powershell.

Oggi avevo bisogno di estrarre delle informazioni da un file di log . Il file conteneva una grande quantità di linee duplicate. Mi sono chiesto se e come Powershell potesse aiutarmi nel produrre un file contenente solo una copia di ogni linea. Poweshell si è dimostrato molto flessibile e ho trovato tre possibili soluzioni (anche se immagino ce ne siano altre possibili):

1) Get-Content log.txt | Select-object -Unique | Out-File unique-log.txt
2) Get-Content log.txt | Sort-object | Get-Unique | Out-File unique-log.txt
3) Get-Content log.txt | Sort-object -unique | Out-File unique-log.txt

Le soluzioni 2 e 3 sono sostanzialmente equivalenti. 

La differenza tra la soluzione 1 e le soluzioni 2 e 3 e che queste ultime ritornano le linee ordinate e questo è perché Get-Unique restituisce gli item univoci di una lista ordinata. In alcune situazioni questo potrebbe non essere gradito, in altre situazioni essere utile (per esempio nel caso la lista sia costituita da righe suddivisibili in diversi campi come in un file .csv).

La soluzione che risponde meglio alle mie necessità è la 1 perché mantiene l'ordine delle stringhe.

Ciao a tutti e a presto

PierGiorgio Malusardi

Comments
  • ciao piergiorgio,

    inanzitutto complimenti per le tue ottime presentazioni!

    oggi (21/12/2006) non sono riuscito a vedere il tuo webcast delle 14.00. (errori non specificati ... mi gira alla pagina di supporto).

    è possibile prelevare i webcast già eseguiti?

    sono interessato a questo e ai seguenti:

    - Le novità di Windows Firewall e di Windows Defender in Windows Vista (Livello 200)

    - Windows Server 2003 R2: Gestione delle stampanti (Livello 300).

    grazie e auguri !

    ciao roberto

  • Ciao Roberto.

    Il webcast che cercavi era stato annullato ed è stato esposta un'errata pagina di errore.

    I webcast passati sono ora scaricabili a partire dalla pagina di technet italia (http://www.microsoft.com/italy/technet) menù Eventi e webcast > Webcast > Webcast passati.

    Ciao e Buon Anno.

    PierGiorgio Malusardi

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment