目前,我正在尝试使我们在工作中使用的程序自动化。每当我们安装 Oracle 的 JDK 时,我们需要手动将它添加到我们的全局 PATH
变量中。以下是程序的摘录:
sudo vi /etc/environment
add this at the beginning of the PATH : "/opt/jdk1.6.0_45/bin:"
这是我电脑上/etc/environment
的内容:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
这是修改后的样子:
PATH="/opt/jdk1.6.0_45/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
不要忘记这个文件不是脚本,而是一个包含 KEY=VALUES 的文件。此文件存储系统范围的区域设置和路径设置。
我的问题是如何在不涉及任何手动操作的情况下从 /etc/environment
添加到 PATH
变量的新路径,最好仅使用 bash 脚本。此外,如果我运行生成的脚本两次,我希望避免看到我的 JDK 路径被多次添加。
最佳答案
可以先用sed删除再插入jdk路径:
#!/bin/bash
sed -e 's|/opt/jdk1.6.0_45/bin:||g' -i /etc/environment
sed -e 's|PATH="\(.*\)"|PATH="/opt/jdk1.6.0_45/bin:\1"|g' -i /etc/environment
关于linux - 如何从 bash 脚本修改/etc/environment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26263249/