V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
dwzhao
V2EX  ›  Python

Linux $PATH 变量出现`No such file or directory`

  •  
  •   dwzhao · 2018-11-20 16:00:40 +08:00 · 3673 次点击
    这是一个创建于 2225 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚刚在 /etc/profile 中添加了 PATH 信息,然后顺手检查一下效果,发现一个奇怪的信息: $ $PATH -bash: /usr/local/java-se-7u75-ri/java-se-7u75-ri/bin:/usr/local/mongodb/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games: No such file or directory

    然后直接输出 $ echo $PATH /usr/local/java-se-7u75-ri/java-se-7u75-ri/bin:/usr/local/mongodb/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

    看起来目录都是有的,为什么会有这样的提醒:No such file or directory 表示很疑惑????

    jasonyang9
        1
    jasonyang9  
       2018-11-20 16:09:27 +08:00
    你在 Shell 中输 `$PATH`,它替换成 `PATH` 变量的内容了,然后再去尝试解释运行它,就是`No such file or directory`咯。怎么可能有符合这一大串的路径或命令存在系统中?而且中间有冒号分隔的
    CivAx
        2
    CivAx  
       2018-11-20 17:21:09 +08:00
    你的环境变量加错了。
    系统默认定义了一个 PATH,同时定义了 PATH 的内容。
    然后你又定义了一个 PATH,同时定义了 PATH 的内容。
    基于后覆盖先的顺序加载,你的 PATH 会把系统的 PATH 变量给顶掉,所以会报错。而且你仔细看看报错的内容,是 bash 报的错,说明在你定义的目录中不存在"bash"的可执行文件。

    正确的写法是:
    export PATH=$yourPathArgument:$PATH
    在 PATH 中用冒号隔开后接“$PATH ”,表示加载“之前被定义过的 PATH 变量”。

    这是一个范例:
    export JAVA_HOME=/usr/local/jdk/latest
    export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    dwzhao
        3
    dwzhao  
    OP
       2018-11-20 18:12:12 +08:00
    @jasonyang9,是我懵逼了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1803 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:20 · PVG 00:20 · LAX 08:20 · JFK 11:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.