404:: command not found
我刚刚意识到每次打开终端时都会收到消息。我不记得在收到此消息之前安装了什么:
我在任何 bash 的启动文件中都找不到它:
$ grep 404 -H ~/.bashrc ~/.profile ~/.bash_profile ~/.bash.login \
~/.bash_aliases /etc/bash.bashrc /etc/profile \
/etc/profile.d/* /etc/environment 2> /dev/null
$
我也跑了PS4='${BASH_SOURCE}:${LINENO} ' bash -lxe
,你可以找到完整的输出这里。
答案1
你的这部分bash -lxe
输出:
///usr/share/bash-completion/bash_completion:1981 . /etc/bash_completion.d/docker-compose
////etc/bash_completion.d/docker-compose:1 404: Not Found
////etc/bash.bashrc:57 '[' -x /usr/lib/command-not-found ']'
////etc/bash.bashrc:58 /usr/lib/command-not-found -- 404:
404:: command not found
////etc/bash.bashrc:59 return 127
读到你有一个/etc/bash_completion.d/docker-compose
以 开头的文件404:
。我猜你曾经尝试从某个地方下载该配置文件,结果却保存了一条 HTTP 错误消息。
该文件应为纯文本;您可以使用您喜欢的文本编辑器对其进行修改(您需要使用 sudo/sudoedit/etc 来修改它)。
附言:我建议您在安装之前先检查一下下载的文件 - 不仅要注意错误消息,还要查看它们的作用(如果您不完全信任它来自的网站,或者它通过 HTTP 而不是 HTTPS 提供服务,这一点尤其重要),以及您的特定设置是否需要进行任何自定义。
答案2
我遇到了同样的错误:打开一个新 shell 后,我收到以下消息:
-bash: 404:: command not found
我依次追踪了:
~/.bashrc
/etc/bash_completion
/usr/share/bash-completion/bash_completion
- 最终
/etc/bash_completion.d/docker-compose
只剩下404: Not Found
内部
回到我的docker-compose
设置,我发现我在安装相应 bash 补全的命令中输入了错误。用于安装(或恢复)此 bash 补全的命令可以在Docker 文档。
答案3
我和上面的所有人一样,文件中出现 404 错误/etc/bash_completion.d/docker-compose
。删除它可以解决问题。