0

我正在尝试创建一个脚本来运行 docker 集群。

在我的脚本中,有一段时间我想将一些文件从 docker 复制到我的本地机器。所以我正在创建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变量中删除这个字符

4

1 回答 1

2

这个执行我认为的脚本必须是

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

可能是使用存储带有 DOS 行尾的文本文件的编辑器(如 Notepad++)编写的。

dos2unix在该脚本上运行,或使用

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

要解决这个问题。

于 2017-09-08T16:55:12.713 回答