2017-09-08 9 views
0

ドッカークラスターを実行するためのスクリプトを作成しようとしています。奇妙な文字ドッカーexec

私のスクリプトでは、ドッカーからローカルマシンにファイルをコピーしたいという瞬間があります。だから私はCONTAINER_WORKDIR変数を作成しています。

CONTAINER_WORKDIR=`docker exec -it jmeter-master /bin/pwd` 

CONTAINER_WORKDIRに格納された値は次のとおりです。

/usr/local/apache-jmeter-3.2/bin 

問題は、この変数の最後に奇妙な文字があるということです。以下の行を実行しよう:

echo "docker cp jmeter-master:$CONTAINER_WORKDIR/output.csv ." 

私の予想結果は

docker cp jmeter-master:/usr/local/apache-jmeter-3.2/bin/output.csv . 

である。しかし、実際の出力は次のとおりです。

/output.csv .ter-master:/usr/local/apache-jmeter-3.2/bin 

pwdまたはdocker execコマンドが返す文字を返しています。

CONTAINER_WORKDIR変数

答えて

1

からこの文字を削除する方法は、私が推測何を実行このスクリプトは

CONTAINER_WORKDIR=$(docker exec -it jmeter-master /bin/pwd) 

はDOSのテキストファイルを保存するエディタで書かれている可能性がありでなければならない存在であるライン - エンディング(Notepad ++のような)。

そのスクリプトの実行dos2unix、またはそれを修正する

$ tr -d '\r' <script >script-new 

使用しています。