@Mit_tt

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

PowerShellの文字列をシングルクォートかダブルクォートのどちらで囲むべきか

解決したいこと

Windows PowerShellで文字列を囲むときにシングルクォート「'」かダブルクォート「"」のどちらで囲んでいますか?

ChatGPTに聞いてみるとパフォーマンスの観点ではシングルクォートの方が良いため文字列を囲むときは「'」、変数を含む場合は「"」という返答を貰いました。

「"」で統一してもいいのではないかと思っているのですが、みなさんは使い分けていますか?

よろしくお願いいたします。

該当するソースコード

Measure-Command{Write-Output 'Hello World'}
Measure-Command{Write-Output "Hello World"}

Measure-Command{Write-Host 'Hello World'}
Measure-Command{Write-Host "Hello World"}
0 likes

3Answer

’’””で変数の扱いに差異があります

変数名をテキストとして出力したい場面があるか否かで選ぶといいでしょう
個人的には思いつかないので””を使用しています

3Like

私は固定の文字列の場合は'...'、変数の展開等がある場合は"..."で使い分けています(他にもヒアドキュメント@"..."@もありますが略)。
パフォーマンスが理由ではなく、展開の有無が明確になるためです。
"..."に統一する場合と比べて、多少なり可読性が上がると考えています。
(短い文字列しか使わないなら変わりませんが・・・)

2Like

learn.microsoft.com で引用符に関するルールが公開されているのでそちらを参考に決められてはいかがでしょう。

すでにコメントされていますが変数展開の振る舞いが選定基準の大部分で良いかと思います。

1Like

Your answer might help someone💌