Docker容器内TXT文件内容复制到本地主目录失败求助
问题修复方案
错误点解析
- 变量赋值语法错误:原命令里
text_file=$ sudo docker exec...的写法不对,命令替换赋值必须用$(...)包裹执行的命令 - 文件复制方式错误:
docker exec中执行cp仅能在容器内部完成文件操作,无法直接将容器内文件导出到本地,需要使用docker cp命令
正确操作命令
- 正确获取容器内目标文件名:
text_file=$(sudo docker exec --workdir /Docker1 docker_1 ls -Sr | head -1)
- 将容器内文件复制到本地主目录:
sudo docker cp docker_1:/Docker1/$text_file ~/file_in_home_dir.txt
特殊情况处理
如果目标文件名包含空格或特殊字符,给变量引用加上双引号避免解析错误:
sudo docker cp "docker_1:/Docker1/$text_file" ~/file_in_home_dir.txt
内容的提问来源于stack exchange,提问作者JavaNoob
相关产品推荐
相关产品推荐

