を使用して PowerShell の置換 () メソッドまたは PowerShell の置き換え 演算子を使用すると、複数のファイルの文字列を置き換えることができます。
を使用して Get-ChildItem コマンドレットは、指定された場所から項目を取得し、出力を 取得コンテンツ ファイルを読み取るには、replace メソッドを呼び出して、複数のファイルの文字列を置き換えることができます。
この記事では、PowerShell の replace() メソッドまたは replace 演算子を使用して、複数のファイル内の文字列を置き換える方法について説明します。
replace() メソッドを使用して複数のファイルの文字列を置換
を使用して PowerShell の置換 () を使用して取得した複数のファイルに対するメソッド Get-ChildItem コマンドレットを使用すると、複数のファイルで文字列の置換を実行できます。
ディレクトリに複数の構成ファイルがあり、各構成ファイルの著作権年を現在の年に置き換えたいとします。
複数のファイルの文字列を置き換えるには、その場所からファイルを取得し、 取得コンテンツ ファイルの内容を読み取るコマンドレット。
$filePath = "D:psConfig*.config" # Get the files from the folder and iterate using Foreach Get-ChildItem $filePath -Recurse | ForEach-Object { # Read the file and use replace() (Get-Content $_).Replace('2015','2022') | Set-Content $_ }
上記の PowerShell スクリプトでは、 $filePath 変数には、構成ファイルのディレクトリ パスが含まれます。
Get-ChildItem コマンドレットを使用して、ファイルを再帰的に取得し、 ForEach-オブジェクト 各ファイルを反復処理します。
の 取得コンテンツ コマンドレットは、ファイル パスを使用してファイルの内容を読み取り、呼び出します。 交換() 2 つの引数を持つメソッド。 検索する古い年と、見つかったテキストに置き換える文字列値を指定し、出力を セット内容 コマンドレット
の セット内容 コマンドレットは、ファイル パスを使用してファイルを保存します。
を使いましょう 取得コンテンツ 構成ファイルの1つからファイルの内容を読み取り、複数のファイルの置換文字列が保存されているかどうかを確認します。
Get-Content -Path D:PSConfigapp-1.config
PS C:> Get-Content -Path D:PSConfigapp-1.config
[assembly: AssemblyTitle("Logic")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Logic")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
PS C:>
replace 演算子を使用して複数のファイルの文字列を置換する PowerShell
PowerShell を使用できます 交換 複数のファイルの文字列を置換する演算子。
上記の例を使用して、複数の構成ファイルの文字列を置き換えて著作権年を更新してみましょう。
$filePath = "D:psConfig*.config" # Get the files from the folder and iterate using Foreach Get-ChildItem $filePath -Recurse | ForEach-Object { # Read the file and use replace() (Get-Content $_) -replace '2015','2022' }
上記の PowerShell スクリプトでは、 $filePath 変数には、複数の構成ファイルのディレクトリ パスが格納されます。 を使用して Get-ChildItem $filePath を使用してファイルを取得し、 ForEach-Object を反復する ファイル。
の 取得コンテンツ コマンドレットは、ファイル パスを使用してファイルの内容を読み取り、replace 演算子を使用してファイル内の文字列を置き換えます。
結論
PowerShell の replace() メソッドまたは replace 演算子を使用して複数のファイルの文字列を置換する方法に関する上記の記事がお役に立てば幸いです。
PowerShell 文字列には、文字列操作用の組み込み関数があります。
PowerShell Active Directory コマンドと PowerShell の基本に関するその他のトピックについては、ShellGeek のホームページを参照してください。
The post 複数のファイルのPowerShell置換文字列 appeared first on Gamingsym Japan.