- - Sådan udskiftes et ord i flere tekstfiler i Windows 10

Sådan udskiftes et ord i flere tekstfiler i Windows 10

Tekstfilredaktører som Notepad og Notepad ++ erbruges til at oprette masser af forskellige typer filer som undertekster, logfiler, batchfiler, PowerShell-scripts og mere. Hvor en tekstfileditor kan oprette disse filer, kan den også redigere dem. Hvis du har en masse tekstfiler, dem, der har TXT-filtypenavnet, og du er nødt til at erstatte et ord, eller flere ord i dem, kan du gøre det med et PowerShell-script. Scriptet gør det, så du ikke behøver at åbne hver fil individuelt og derefter erstatte ordet. Du kan bruge det samme script til andre filtyper, der kan oprettes med en tekstfileditor. Sådan kan du erstatte et ord i flere tekstfiler.

Erstat Word i tekstfiler

Først skal du placere alle dine tekstfiler i den samme mappe. Scriptet vil kun undersøge et bibliotek, når det kører, og ikke hele dit system, hvorfor du har brug for alle filerne ét sted.

Åbn en ny Notepad-fil, og indsæt følgende i den.

Get-ChildItem "Path-to-files*.txt" -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace "Original-Word", "New-Word" }) |
Set-Content $_
}

Du skal redigere ovenstående script. Rediger først "Path-to-files" -delen med den aktuelle sti til mappen med alle tekstfiler deri. For det andet skal du erstatte 'Original-Word' med det ord, du vil erstatte. Til sidst skal du udskifte 'New-Word' med det ord, du vil erstatte det gamle med. For eksempel har jeg et par tekstfiler, som alle har ordet 'Post' i dem. Jeg vil erstatte ordet Post med artikel. Sådan ser scriptet ud, når jeg har redigeret det, der passer til mit scenarie.

Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.txt" -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace "Post", "Article" }) |
Set-Content $_
}

Når du har redigeret scriptet, skal du gemme det medps1 filtypenavn. Sørg for at ændre filtypen fra tekstfiler til alle filer i Notepads gemme som dialog. Kør scriptet, og det udfører erstatningsfunktionen.

Hvis du vil bruge det samme script til XML- eller LOG-filer, skal du redigere filtypenavnet på den første linje. For eksempel,

Dette bliver

Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.txt"

Dette;

Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.xml"

Der er en ting, du burde vide om dettemanuskript; det stemmer ikke overens med ord. Hvis du ønsker at erstatte enhver forekomst af 'the' med 'a', vil den også erstatte 'the' i starten af ​​'disse' og 'der'. Det er en mangel ved dette script. For at omgå det kan du bruge Notepad ++, som har en matchordindstilling.

Kommentarer