V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Waihinchan
V2EX  ›  macOS

mac 终端启动时报错如何解决

  •  
  •   Waihinchan · 2019-09-17 16:48:00 +08:00 · 2196 次点击
    这是一个创建于 1921 天前的主题,其中的信息可能已经有所发展或是发生改变。

    #Last login: Tue Sep 17 01:21:49 on console #-bash: /etc/profile: line 7: syntax error near unexpected token (' #-bash: /etc/profile: line 7:PATH=".$PATH:$JAVA_HOME/bin"# System-wide .profile for sh(1)'

    每次启动就出现以上的提示。应该是 /etc/profile 有点问题。但是不知道怎么改回去。知道如何修改这个文件,但是不知道原来是什么样的。

    网上查了一下说用这个 export PATH=/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

    然而输入了之后还是没反应 主要是大部分方法好像都是重新修改,但是我也不知道语法。

    求问要怎么解决呢(之前装 python 什么的配置过一些环境的确是动过,但是现在改不回去了) 谢谢大家

    13 条回复    2019-09-18 11:27:18 +08:00
    Waihinchan
        1
    Waihinchan  
    OP
       2019-09-17 16:52:29 +08:00
    贴一下 /etc/profile 的内容
    JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home"

    export JAVA_HOME

    CLASS_PATH="$JAVA_HOME/lib"

    PATH=".$PATH:$JAVA_HOME/bin"# System-wide .profile for sh(1)

    if [ -x /usr/libexec/path_helper ]; then
    eval `/usr/libexec/path_helper -s`
    fi

    if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc

    fi
    JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home"

    export JAVA_HOME

    CLASS_PATH="$JAVA_HOME/lib"

    PATH=".$PATH:$JAVA_HOME/bin"
    JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home"

    CLASS_PATH="$JAVA_HOME/lib"

    PATH=".:$PATH:$JAVA_HOME.bin"
    JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home"

    CLASS_PATH="$JAVA_HOME/lib"

    PATH=".:$PATH:$JAVA_HOME.bin"
    keyv
        2
    keyv  
       2019-09-17 17:15:30 +08:00 via iPhone
    可能是$前面的.的问题
    wamson
        3
    wamson  
       2019-09-17 17:18:43 +08:00 via iPhone
    是$JAVA_HOME.bin 的问题吧,应该写成$JAVA_HOME/bin
    chendy
        4
    chendy  
       2019-09-17 17:23:17 +08:00
    如果才能把网络上所有的,一上来就让大家配环境变量的 java 教程,给删掉呢
    Waihinchan
        5
    Waihinchan  
    OP
       2019-09-17 17:31:02 +08:00
    @wamson 我试一下
    learnshare
        6
    learnshare  
       2019-09-17 17:32:35 +08:00   ❤️ 1
    好多年没配置过 JAVA_HOME 了,真的需要这个么?
    删掉你所做的调整,直接 brew install 如何

    $brew cask install java
    🍺 java was successfully installed!
    $java --version
    openjdk 12.0.2 2019-07-16
    OpenJDK Runtime Environment (build 12.0.2+10)
    OpenJDK 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)
    Waihinchan
        7
    Waihinchan  
    OP
       2019-09-17 17:42:11 +08:00
    @wamson 额 把所有的.bin 改成 /bin 还是这个问题。。。
    Waihinchan
        8
    Waihinchan  
    OP
       2019-09-17 17:43:16 +08:00
    @learnshare 额 就是我直接用 brew 再装一次 java 可能就可以解决?
    learnshare
        9
    learnshare  
       2019-09-17 17:49:22 +08:00
    @Waihinchan
    1. 删掉 /etc/profile 中你手动改的东西(还原)
    2. brew cask install java
    learnshare
        10
    learnshare  
       2019-09-17 17:52:39 +08:00
    Waihinchan
        11
    Waihinchan  
    OP
       2019-09-17 17:55:43 +08:00
    @learnshare 我试试
    Waihinchan
        12
    Waihinchan  
    OP
       2019-09-17 17:59:42 +08:00
    @Waihinchan 现在没报错了~谢谢啦
    TonyLiu2ca
        13
    TonyLiu2ca  
       2019-09-18 11:27:18 +08:00
    其实就是第 7 行的愈发错了,本来是两行的,写在一行了,原来是:
    PATH=".$PATH:$JAVA_HOME/bin"# System-wide .profile for sh(1)

    应该是
    PATH=".$PATH:$JAVA_HOME/bin"
    # System-wide .profile for sh(1)

    原来的 profile 文件,还有重复的部分,还有不一致的.bin 对比 /lib 等,真不知是怎么搞的。
    回复成 10 楼的系统默认的就好。但是,更严谨点的话,还要看看楼主的系统版本,低版本 10.10 之前的好像不是这样的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2837 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 06:39 · PVG 14:39 · LAX 22:39 · JFK 01:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.