Solved

Removing Duplicate words from lines in a power shell

Posted on 2015-02-23
5
83 Views
Last Modified: 2015-02-24
Hi

I am trying to find away to remove Duplicate words from a text file using Powershell

   
Name1 PC1234 PC1234 start Tue 2/17 6:53
Name2 PC5678 PC5678 start Tue 2/17 7:51

What I would like is


Name1 PC1234 start Tue 2/17 6:53
Name2 PC5678 start Tue 2/17 7:51

I have managed to get it working using the following but I would like to be able to open a .txt file remove the duplicate on all lines and right the content back to a new file.

$text= "Name1 PC1234 PC1234 start Tue 2/17 6:53"
$text.Length
$text.remove(14)

Open in new window


Thank you of your help
0
Comment
Question by:Si Walton
5 Comments
 
LVL 53

Expert Comment

by:Will Szymkowski
ID: 40626292
Might not be a solution that your looking for, but the easiest way to accomplish this is in Excel and using the remove duplicate button.

Will.
0
 
LVL 83

Accepted Solution

by:
oBdA earned 250 total points
ID: 40626329
So the third column is always a copy of the second?
This will remove the third column:
Get-Content C:\Temp\in.txt | % {$_.Split(" ")[0..1+3..($_.Length -1)] -join " "} | Set-Content C:\Temp\out.txt

Open in new window

0
 
LVL 1

Author Comment

by:Si Walton
ID: 40627722
Hi oBda

Almost there and I understand the $_.Split

How would I be able to get the code to ignore the 1st line in the text file.


Keep this text
Name1 PC1234 PC1234 start Tue 2/17 6:53
Name2 PC5678 PC5678 start Tue 2/17 7:51

Thank you

Si
0
 
LVL 68

Assisted Solution

by:Qlemo
Qlemo earned 250 total points
ID: 40627914
$(
Get-Content C:\Temp\in.txt | select -First 1
Get-Content C:\Temp\in.txt | select -Skip 1 | % {$_.Split(" ")[0..1+3..($_.Length -1)] -join " "}
) | Set-Content C:\Temp\out.txt

Open in new window

0
 
LVL 1

Author Closing Comment

by:Si Walton
ID: 40627936
Hi oBda and Qlemo

Thank you the solutions worked perfectly

Si
0

Featured Post

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Set OWA language and time zone in Exchange for individuals, all users or per database.
Create and license users in Office 365 in bulk based on a CSV file. A step-by-step guide with PowerShell script examples.
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, just open a new email message. In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now