2013-02-05 17 views
8

TeamCityパラメータをコマンドラインビルドステップに渡しています。パラメータ値は、スペースが含まれているときに問題が来る例えば:TeamCity - 空白を含むパラメータ値をコマンドラインに渡す

%env.TEAMCITY_BUILDCONF_NAME% ---> My TC Project 

例えばアンダースコア、いくつかの他の文字と空白を交換する方法はありますか?

%env.TEAMCITY_BUILDCONF_NAME% ---> My_TC_Project 
+0

コマンドラインスクリプトは、通常、環境変数にアクセスできます。おそらく、このように書き直すのは理にかなっています。 –

答えて

1

あなたは二重引用符でパラメータをラップする場合は、通常は空白を使用し続けることができます。

%program.files.dir% =>C:\Program Files (x86)

実行可能ファイル:dir

パラメータ:"%program.files.dir%"

+0

はい、私はそれを試みましたが、私の場合は動作しません。このコマンドは、新しい引数の開始として空白を評価します。 – finspin

+0

それを引用する*はすべきである。実行しているコマンドは何ですか?エラーメッセージは何ですか? – zck

+0

パラメータ値自体に二重引用符を含むことができますか? –

0

スペースをアンダースコアに置き換える方法はわかりませんが、w hitespaces。チームシティービルドステップで 、私はDealerNameは「偉大なディーラー(株)」だったが、それも二重引用符で、空白では動作しませんでしたパラメータ

-S %sql_server% -U %sql_username% -P %sql_password% 
-i "custom_script.sql" -d "%custom_db%" 
-v DealerName="%DealerName%" 

実行などのsqlcmdを実行しようとしていました。

それは魅力のように働いたカスタムスクリプト

sqlcmd -S %sql_server% -U %sql_username% -P %sql_password% 
-i "custom_script.sql" -d "%custom_db%" 
-v DealerName="%DealerName%" 

のような(私の上司の提案のおかげで)として、それを設定することで、問題を修正しました。

あなたの質問に対する正確な答えではない場合でも、同様の問題に役立つ可能性があります。

関連する問題