文章目录
设备环境
WSL2
Ubuntu-20.04
本教程适配所有linux,不管你是虚拟机还是WSL或则其他的平台。
问题探讨
因为专业课的要求,须要在Linux中新建一个用户,之后转入这个用户来完成专业课的各类实践要求。有可能是我在新建用户后没有执行某个"特定"的配置,致使我遇见个人的环境变量配置不能手动加载的问题,虽然我一步一步依照安装指南进行了相应操作。
我详尽介绍一下我的问题:
可以看见我新建的用户为hadooplinux环境变量 文件配置文件ubuntu linux,然而明眼人一下才会发觉,为何换了一个用户,用户名的颜色就变了,一个红色,十分显眼好看,而一个黑色,变得这么惨白。虽然这也为旁边埋下了伏笔。
我通过sudovim~/.bashrc来查看环境变量,如下:
可以见到关于java的环境变量我已配置,并且我在终端执行java-version后却弹出没有找到该命令的问题:
我使用source~/.profile命令来刷新配置文件,可以看见用户名变为了红色,但是java-version也才能成功使用,我以为我成功了。
假如你没有profile文件,就通过sudovim~/.profile新建一个红帽linux系统下载,并把下述代码添加进去:
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
但是当我退出linux系统重新登陆后,用户名又变为红色,但是java-version也不能使用,人崩了,尽管可以继续执行source~/.profile来重新加载配置文件,而且你想假如每次登入linux这个用户都要执行刷新命令,那该多鸡肋啊,但是这也不符合程序员的规范啊,是我我就受不了。
解决方式
编辑bash_profile文件,致使终端每次启动才能手动加载个人配置文件。
解释:.bash_profile文件,这个文件只在登陆shell启动时被读取。假如你想让终端启动时手动刷新个人配置文件,你须要在.bash_profile文件中添加一行命令来读取.bashrc文件。
执行sudovim~/.bash_profile命令(假如没有该文件,会手动创建),加入以下代码:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
这段代码的意思是,假如.bashrc文件存在,这么就执行source~/.bashrc命令来读取它。
最后,你须要让更改后的.bash_profile文件立刻生效。在终端中输入source~/.bash_profile即可。
我们可以看见,用户名又变为了红色,java-version命令也才能正常使用。
但是当你退出该终端,重新登陆该用户linux环境变量 文件配置文件,可以看见用户名一开始就是红色,java-version命令也就能使用。Cheers!
至此linux终端启动后不能手动加载环境变量配置的问题早已完美解决,好了,我要去肝专业课的实验了。