linux - docker exec 找不到 /etc/apt/sources.list
问题描述
我需要在/etc/apt/sources.list
. 该文件存在于 docker 容器中。我正在执行的命令是:
docker exec -u 0 -it my_container echo "deb http://security.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list
不知何故,它失败了:-bash: /etc/apt/sources.list: No such file or directory
有趣的是,我能够执行:
echo "deb http://security.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list
进入容器后docker exec -u 0 -it my_container /bin/bash
我想知道为什么第一个命令不起作用。
解决方案
我相信>>
是这里的罪魁祸首。我不得不将整个命令放在引号内。这对我有用:
docker exec -u 0 -it my_container bash -c 'echo "deb http://security.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list'
推荐阅读
- ubuntu - 使用 PhpStorm 在项目中查找要更改的指定文本
- android - 应用程序崩溃:java.lang.IllegalStateException:无法执行 android:onClick 的方法
- django - Django:如何从不同的模型中获取 id
- apple-push-notifications - 退出应用程序后未收到静默推送 (APNS)
- javascript - 循环遍历 div 并给它们 id 然后使它们可点击
- c#-4.0 - X509Certificate2 - 远程服务器无法返回。(502) 网关错误
- cassandra - 是否可以为现有 Cassandra 表设置默认生存时间,并使用 CQL 将此 TTL 应用于表中的所有现有记录
- firebase - 如何更新存储为 Firestore 中的 FieldValue 的数组中元素的值
- django - 使用 django-pytest、docker 在 Travis 上设置时出错
- android - 我们如何在java中检查有多少手指在屏幕上点击?