【问题标题】:Log: "bash: export: "PATH.": not a valid identifier" when opening terminal on Ubuntu在 Ubuntu 上打开终端时记录:“bash:export:”PATH。“:不是有效的标识符”
【发布时间】:2016-05-12 09:38:40
【问题描述】:

每当我打开一个终端时,它上面都会出现一条消息,说明我在标题中写的内容。 我想我在尝试让 Maven 工作时弄乱了 /etc/profile 文件。 我阅读了一些关于导出变量的信息,但找不到我的错误,因为我遵循了对其他人来说效果很好的指南。

我提到的配置文件在底部有这些行:

JAVA_HOME=/usr/local/java/jdk1.8.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
JRE_HOME=/usr/local/java/jre1.8.0
PATH=$PATH:$HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

设置 $JAVA_HOME 让我可以正确使用 Maven,但会产生这个烦人的消息。你能帮帮我吗?

【问题讨论】:

  • $'s放在变量前面...
  • 为什么先赋值再导出,两者可以像export JAVA_HOME=/usr/local/java/jdk1.8.0一样组合起来
  • 为什么在您的错误信息中PATH 后面有一个句点?在某个地方,你有类似 export PATH. 的东西。
  • Re: 123 - 我应该把 & 放在哪里?在每个变量之前?当我导出它们?回复:piyush jaiswal - 我跟着导游,就这样。如果组合得到相同的结果,为什么还要麻烦呢?回复:chepner - 我知道,但我在任何地方都找不到它,而且肯定不在 /profile 文本中。关于在哪里或如何找到它的任何建议?

标签: bash maven java-home


【解决方案1】:

正如 cmets 中的其他人所提到的,您正试图在某处导出 PATH. 而不是 PATH。您可能需要检查 /etc/profile~/.bashrc~/.bash_profilefiles 并尝试查找此无效导出。

您提供的来源在技术上是可以的,您不需要添加任何$ 标志。您的 PATH 将包含两次 $HOME/bin 值。您可能希望将其更改为如下所示:

export JAVA_HOME=/usr/local/java/jdk1.8.0
export JRE_HOME=/usr/local/java/jre1.8.0
export PATH="$PATH:$HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin"

【讨论】:

  • 这确实是一个“导出路径”。我在 ~/.bashrc 文件中找到。解决了! TY 对于你回答的最后一部分:我必须修改 /ect/profile 还是另一个?
  • 您不必这样做。但是你有两次$HOME/bin。您可以通过在终端中输入 echo $PATH 来查看。我建议您按照我的建议编辑/etc/profile,或者只需从包含PATH=的第二行中删除:$HOME/bin
  • export variable=value 语法不能移植到 sh。如果你把它放在像.profile 这样的文件中,它也被 Bash 以外的 shell 读取,请不要更改为这种语法。
猜你喜欢
  • 2016-04-21
  • 1970-01-01
  • 2021-09-21
  • 2014-07-03
  • 2017-08-14
  • 2018-11-28
  • 2013-09-23
  • 2023-01-03
  • 2019-04-21
相关资源
最近更新 更多