質問: `$bb`$" "C:\Users\・・・\xml配置フォルダ\*.xml" ```
回答: `Select-String`の`-Pattern`パラメータに渡すのは正規表現文字列です。 正規表現では`$`は行末を表すメタ文字になっているので`$`自体にマッチさせるにはエスケープして`\$`という文字列を渡す必要があります。 また、ご存知のようにPowerShellにおいて`$`は変数を使用する目印となっているのでPowershellの文字列リテラルでは`$`自体は``$`と書く必要があります。 よって`\$`という文字列を`Select-String`に渡すには`\`$`と書く必要があります。 ``` Select-String "\`$aa\`$ = \`$bb\`$" ``` ただしシングルクォートで囲めば`$`はそのまま`$`として表せるので次のように書けます。 ``` Select-String '\$aa\$ = \$bb\$' ``` また`-SimpleMat`スイッチを付けて`Select-String`で正規表現を使わないようにすることもできます。 ``` Select-String '$aa$ = $bb$' -SimpleMatch # 短く書くなら sls '$aa$ = $bb$' -s ``` 正規表現のエスケープとPowershellの文字列リテラルのエスケープは混同されがちのようですので慣れるまでは気をつけられるとよいかと思います。