分享一个有关路径设置的低级错误 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
jackmod
V2EX    Linux

分享一个有关路径设置的低级错误

  •  
  •   jackmod 2020-08-16 19:10:35 +08:00 2043 次点击
    这是一个创建于 1910 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚刚遇到了一个比较低级的错误,一时没反应过来。现把解决的过程简单分享一下。

    问题

    执行一个 python 的脚本,提示找不到模块。

    环境条件

    1. ubuntu 20.04 。
    2. 机器很久没有重装,也没有特别大的改动。
    3. 期间没有卸载过任何依赖包。
    4. 依赖包来自 apt 。LTS 仓库稳定,突然不能跑的概率较低。

    表现

    执行之前有效的脚本,突然提示找不到模块。使用 pip 安装,提示路径不可写。提示的路径是 flexget 或 youtube-dl 的路径(视 $PATH 中的顺序)

    检查

    输入 which pip3 命令,发现 pip 在 flexget/bin 里。继续使用 which python3 检查,它也在 flexget/bin 里。

    在 python 中打印 sys.path,与另一用户的结果不同,且包含 flexget/bin 的内容。

    原因

    此时回想前几天的操作可知。先前模仿安装 flexget 的方法,为机器安装了最新的 youtube-dl 。之后为了图方便,把二者的 bin 目录加入了 $PATH 里

    修复

    去掉 $PATH 中后来增加的内容,重新检查后,一切恢复正常。

    ~/.local/bin 中建立 flexget 和 youtube-dl 的符号链接来实现相同目的。

    总结

    遇到类似奇怪的问题,先执行 which 命令,看看到底是不是自己想要运行的程序。如果是路径的问题,修正路径后,问题可能就解决了。

    另外,通过 python3 -m venv 独立安装的软件,如果需要快速调用,不应直接添加 $PATH,而是在已有的 $PATH 所指向的目录里添加符号链接。

    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     841 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 21:25 PVG 05:25 LAX 13:25 JFK 16:25
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86