Beste Tweakers,
Ik ben bezig met een Powershell script dat een .txt bestandje moet inlezen en hierna een overzicht geeft van hoeveel woorden er in het bestand zitten en welk woord hoevaak voorkomt.
Hierna moet de gebruiker de keuze krijgen om twee woorden in het bestand te vervangen voor eigen gekozen woorden.
Voor het vervangen van woorden heb ik deze code gebruikt:
Write-Host "Met welk woord wilt u antiek vervangen?"
$1 = Read-Host
Write-Host "Met welk woord wilt u klok vervangen?"
$2 = Read-Host
(Get-Content C:\Text.txt) |
Foreach-Object {$_ -replace "antiek", " $1 "} |
Foreach-Object {$_ -replace "klok", " $2 "} |
Set-Content C:\Text.txt
Alleen ik krijg het eerst gedeelte maar niet aan de praat. Ik heb talloze websites doorgespit maar ik vind nergens wat ik precies zoek. Ik heb wel enkele manieren gevonden maar deze leveren niet het gewenste resultaat.
Ik heb bijv. onderstaande gebruikt:
Get-Content C:\Text.txt |measure-object -word
Maar hiermee krijg ik alleen te zien hoeveel woorden er in het document zitten en voor de rest niks. Andere scripts die wel lijken te doen wat ik wil krijg ik niet goed werkend.
Nu is mijn vraag, heeft iemand een tip hoe ik dit het beste kan aanpakken? Of een website waar deze functionaliteit goed word uitgelegd. Dus een stap in de goede richting?
Alvast bedankt!
Edit: Ik heb trouwens hier iets gevonden wat ik zoek. Maar ik krijg hiermee foutmeldingen dat mijn format niet overeenkomt met wat standaard is. Hij doet wel de woorden in een overzichtje neerzetten maar door de foutmelding gaat mijn script niet door met het tweede gedeelde. Het vervangen.
http://thepowershellguy.c...found-in-a-text-file.aspx
Deze foutmelding krijg ik:
The object of type "Microsoft.PowerShell.Commands.Internal.Format.FormatStartData" is not valid or not in the correct sequence. This is likely caused by a user-specified "format-table"
command which is conflicting with the default formatting.
+ CategoryInfo : InvalidData: (
[out-lineoutput], InvalidOperationException
+ FullyQualifiedErrorId : ConsoleLineOutputOutOfSequencePacket,Microsoft.PowerShell.Commands.OutLineOutputCommand
Ik ben bezig met een Powershell script dat een .txt bestandje moet inlezen en hierna een overzicht geeft van hoeveel woorden er in het bestand zitten en welk woord hoevaak voorkomt.
Hierna moet de gebruiker de keuze krijgen om twee woorden in het bestand te vervangen voor eigen gekozen woorden.
Voor het vervangen van woorden heb ik deze code gebruikt:
Write-Host "Met welk woord wilt u antiek vervangen?"
$1 = Read-Host
Write-Host "Met welk woord wilt u klok vervangen?"
$2 = Read-Host
(Get-Content C:\Text.txt) |
Foreach-Object {$_ -replace "antiek", " $1 "} |
Foreach-Object {$_ -replace "klok", " $2 "} |
Set-Content C:\Text.txt
Alleen ik krijg het eerst gedeelte maar niet aan de praat. Ik heb talloze websites doorgespit maar ik vind nergens wat ik precies zoek. Ik heb wel enkele manieren gevonden maar deze leveren niet het gewenste resultaat.
Ik heb bijv. onderstaande gebruikt:
Get-Content C:\Text.txt |measure-object -word
Maar hiermee krijg ik alleen te zien hoeveel woorden er in het document zitten en voor de rest niks. Andere scripts die wel lijken te doen wat ik wil krijg ik niet goed werkend.
Nu is mijn vraag, heeft iemand een tip hoe ik dit het beste kan aanpakken? Of een website waar deze functionaliteit goed word uitgelegd. Dus een stap in de goede richting?
Alvast bedankt!
Edit: Ik heb trouwens hier iets gevonden wat ik zoek. Maar ik krijg hiermee foutmeldingen dat mijn format niet overeenkomt met wat standaard is. Hij doet wel de woorden in een overzichtje neerzetten maar door de foutmelding gaat mijn script niet door met het tweede gedeelde. Het vervangen.
http://thepowershellguy.c...found-in-a-text-file.aspx
Deze foutmelding krijg ik:
The object of type "Microsoft.PowerShell.Commands.Internal.Format.FormatStartData" is not valid or not in the correct sequence. This is likely caused by a user-specified "format-table"
command which is conflicting with the default formatting.
+ CategoryInfo : InvalidData: (
+ FullyQualifiedErrorId : ConsoleLineOutputOutOfSequencePacket,Microsoft.PowerShell.Commands.OutLineOutputCommand
[ Voor 25% gewijzigd door VulcanRaven op 13-12-2010 16:10 ]