为什么 apt 没有将软件添加到 PATH?

为什么 apt 没有将软件添加到 PATH?

我正在比较snap安装apt方法。首先我尝试了snap

  1. sudo apt update- 我不确定使用 snap 时更新和升级 repos 是否有意义,但我还是这么做了
  2. sudo apt upgrade
  3. sudo snap find kdenlive- 确保正确捕捉
  4. sudo snap install kdenlive
  5. kdenlive- 并启动应用程序
  6. 从 GUI 关闭应用程序
  7. sudo snap remove kdenlive
  8. sudo apt autoremove- 不确定是否将其与 snap 一起使用,但还是这么做了

然后我继续执行apt功能:

  1. sudo apt update
  2. sudo apt upgrade
  3. sudo apt list kdenlive- 寻找 kdenlive 包,但在这里我不明白输出
  4. sudo apt install kdenlive
  5. kdenlive- 导致错误 ( bash: /snap/bin/kdenlive: No such file or directory)
  6. ./kdenlive- 导致同样的错误,我只能从 GUI 运行该应用程序
  7. 然后我按照上面的方法卸载

那么为什么会发生这种情况呢?

答案1

您的 shell – bash – 会保留路径查找的内存缓存。在您运行kdenlive一次并解析为 之后/snap/bin/kdenlive,该特定 shell 进程将直接地从该点出发/snap/bin/kdenlive,不管 $PATH 说什么。

如果程序从一个位置移动到另一个位置,则需要运行hash -r或重新启动 shell 才能生效。

相关内容