小编Luc*_*agi的帖子

如何使用docker cp将多个文件从容器复制到主机

我想使用通配符从容器中的目录中选择多个文件,并使用 docker cp 将这些文件从容器复制到 docker 主机。

我找不到 docker cp 是否支持使用通配符。

docker cp fd87af99b650:/foo/metrics.csv* /root/metrices_testing/
Run Code Online (Sandbox Code Playgroud)

这导致错误 metrics.csv*: no such file or directory

我遇到了一个示例,其中for loop用于选择几个文件然后发送到容器,但我想将文件从容器传输到主机,并希望在 docker 主机本身上执行此操作,因为脚本仅在主机上运行。

可以选择先使用 docker exec 选择文件,然后使用 docker cp 复制它们。但这是一个 2 步过程。

有人可以帮我一步做到这一点吗?

编辑:

我试过这个。一步接近,但仍然失败。

# for f in $(docker exec -it SPSRS bash -c "ls /opt/tpa/logs/metrics.csv*");
     do docker cp SPSRS:$f /root/metrices_testing/;
 done


: no such file or directory lstat /docker/overlay2/193d2ad0d8d087377e3b96cbfb672b0e39132ae5e961872127614c9396f8c068/merged/opt/SPS_18_5_R1/logs/metrics.csv.2018.07.10-08:45
: no such file or directory lstat /docker/overlay2/193d2ad0d8d087377e3b96cbfb672b0e39132ae5e961872127614c9396f8c068/merged/opt/SPS_18_5_R1/logs/metrics.csv.2018.07.10-09:00
: no such file or directory lstat …
Run Code Online (Sandbox Code Playgroud)

cp docker

11
推荐指数
2
解决办法
6282
查看次数

标签 统计

cp ×1

docker ×1