私は、${key}
の形式のハッシュテーブルのいくつかのキーを含むテキストファイルを持っています。私はテキストファイルを解析し、${key}
をその値に置き換える必要があります。以下は、私が
#$config is the hashtable
$document = Get-Content sample.txt
foreach ($conf in $config.Keys) {
[string]$match = '${' + $conf + '}'
$document = $document.Replace($match, $($config.$conf))
}
}
私は$match
文字列
[string]$match = "`${" + $conf + "}"
[string]$match='${'
$match+=$conf
$match+='}'
私も$match='${BACKUP_FOLDER}'
として文字列をハードコーディングしようとしたための代替案の下に試してみましたを使用していたコードはあるが、すべてのケースではそれはありません何もない。私も一致するかどうかを確認するために-match
を試しましたが、常にfalseを返します。 私は、テキストファイルに${key}
形式のいくつかのパターンが含まれていることを確認しました。もし私が$match
の出力をコピーしてファイル内で検索するとパターンを見つけることができます。何が間違っているのか教えてください。私はSAMPLE.TXTのPowershell V5.0
サンプル入力
[email protected]{"BACKUP_DIR"="_Backup";"STAGING_DIR"="_Staging"}
内容を使用しています
Overwrites the contents of new installation with old installation
Always use/as path seperator-->
<!-- <rename path="" newName=""/> -->
<!--
${BACKUP_DIR}
rename-> rename file/directory in new installation
出力:タイプミスのカップルがいるよう${BACKUP_DIR}
が_Backup
質問を編集し、サンプル入力と希望の出力データを追加してください。 – vonPryz