お疲れ様です。東京支社の倉田です。
最近になってPowerShellを使い始めたのですが、
私が嵌ったPowerShellの仕様についてお話させていただきます。
PowerShellの中で関数を定義しreturnを設定し、
呼び出し元で戻り値の判定をおこなうスクリプトを作成したのですが
if文でうまく条件分岐をできませんでした。
少しインターネットで検索してみると
「関数内で標準出力が伴う処理を行うと、return 以前の出力も
戻り値となり呼び出し元に出力されてしまいます」
とありました。
実際にISEでデバッグで確認するとreturn値の中に標準出力の
内容が格納されておりif文が動作しておりませんでした。
同じreturnでもプログラミング言語が異なると挙動が違うことが
良く分かったのでこれからはしっかりと仕様把握するように努めたいと思います。
皆様もPowerShellを使用する際はお気を付けください。
以上です。