- -Windows 10で複数のテキストファイルの単語を置換する方法

Windows 10で複数のテキストファイルの単語を置換する方法

メモ帳やメモ帳++などのテキストファイルエディタは字幕、ログファイル、バッチファイル、PowerShellスクリプトなど、さまざまな種類のファイルを作成するために使用されます。テキストファイルエディタがこれらのファイルを作成できる場合、編集することもできます。 TXTファイル拡張子を持つテキストファイルが多数あり、1つまたは複数の単語を置き換える必要がある場合は、PowerShellスクリプトを使用して行うことができます。スクリプトにより、各ファイルを個別に開いて単語を置き換える必要がなくなります。この同じスクリプトを、テキストファイルエディタで作成できる他のファイルタイプに使用できます。複数のテキストファイルの単語を置き換える方法は次のとおりです。

テキストファイル内のWordを置換する

まず、すべてのテキストファイルを同じフォルダーに配置する必要があります。スクリプトは、システム全体ではなく実行時に1つのディレクトリのみを検査するため、すべてのファイルを1か所で必要とします。

新しいメモ帳ファイルを開き、次のファイルを貼り付けます。

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

上記のスクリプトを編集する必要があります。 まず、すべてのテキストファイルが含まれるフォルダーへの実際のパスを使用して、「ファイルへのパス」部分を編集します。次に、「元の単語」を置き換える単語に置き換えます。最後に、「新しい単語」を、古い単語と置き換える単語に置き換えます。たとえば、「投稿」という単語が含まれるテキストファイルがいくつかあります。 Postという単語をArticleに置き換えたいです。これは、シナリオに合わせて編集したスクリプトの外観です。

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

スクリプトを編集したら、保存してps1ファイル拡張子。ファイルタイプをテキストファイルからメモ帳の[名前を付けて保存]ダイアログのすべてのファイルに変更してください。スクリプトを実行すると、置換機能が実行されます。

この同じスクリプトをXMLファイルまたはLOGファイルに使用する場合は、最初の行のファイル拡張子を編集します。例えば、

これは

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

この;

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

これについて知っておくべきことが一つあります脚本;単語と単語は一致しません。 「the」のすべての出現を「a」に置き換える場合、「these」と「there」の先頭にある「the」も置換されます。これは、このスクリプトの欠点です。この問題を回避するには、一致ワードオプションがあるNotepad ++を使用できます。

コメント