2017-10-24 7 views
2

私は環境変数%SSH_PRIVATE_KEY%を持っており、これをバッチファイルを使わずにコマンドラインを使ってファイルに出力したいと考えています。これは、Gitlab-Ci .ymlスクリプトでこのファイルを使用する必要があるためです。 Linuxの場合Windowsコマンドラインを使用して複数行の環境変数をテキストファイルにエコーする

が、これは同じくらい簡単です:

echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa 

そして、これが生成しますので、上の

-----BEGIN RSA PRIVATE KEY----- 
DHHDpgIFFFFAQEA4s5JARKOiF/dfherreh/qeGLNaryra7rt927okJmonpJHyCbA5SRyjsST/oC 
tJx+YJ0BaNbbHtpbjbMeWgqKPXNAIRng30TXCOLLKverteygerg/ererg/GVFfd5T1v/qY2rGCN 
v9yHSw89upy8pA+HvAFFFFHDb2YUAgpyYMqCcZ3vGY0/NDBxQQwDKwrefqwef/wefweqe/wwALb 

と。私がしようとした場合、Windowsの

しかしは、:

echo "%SSH_PRIVATE_KEY%" > C:\runner\builds\66092d15\0\myproject\.ssh\id_rsa 

それはこの出力を生成します。

"-----BEGIN RSA PRIVATE KEY----- 

とすぐに%SSH_PRIVATE_KEY%に改行文字に達すると、それはechoコマンドをエスケープしているため。

windowsコマンドラインを使用して%SSH_PRIVATE_KEY%をファイルに印刷するにはどうすればよいですか?ラインのすべてを取得するには

+0

を使うのか? – Magoo

+0

@Magooこれは、パイプライン環境に追加されるgitlabの秘密変数として設定されています。これは[ここ](http://docs.gitlab.com/ce/ci/variables/README.html#secret-variables)で説明されています。 – Blue7

答えて

-1

は、どのように変数に複数行の値を代入しているecho !VARIABLENAME!

echo !SSH_PRIVATE_KEY! > C:\runner\builds\66092d15\0\myproject\.ssh\id_rsa 
関連する問題