我是初学者,对Linux不太熟悉。目前正在网上学习如何设置Kafka。教程指出需要将Kafka二进制文件所在路径添加到 .profile 文件中,如下所示:
# ~/.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 directories
DOCKER="/usr/local/bin/docker-compose"
PATH="$HOME/bin:$HOME/.local/bin:$PATH:$DOCKER"
# Ubuntu make installation of Ubuntu Make binary symlink
PATH=/home/username/.local/share/umake/bin:$PATH
cat ~/.ssh/config.d/* > ~/.ssh/config
PATH="$PATH:/home/username/softwares/kafka/kafka_2.11-1.0.0/bin"
接着,我在$PATH上执行了echo命令,我可以看到kafka路径已经添加到了$PATH变量中。然后,我输入了kafka并按下tab键,然后我就可以看到与kafka相关的可选命令。
教程随后告诉我们要编辑.bashrc文件。它已经存在了,而且是一个相当大的文件。按照教程的要求,我在文件末尾添加了以下行:
. ~/.profile
此后,按照教程,我打开了另一个终端,以便查看在kafka和tab之后仍然能够获得与kafka相关的所有选项。我发现终端上没有显示我的用户名,只有一个空白的终端窗口。然后,我编辑了.bashrc文件以删除我添加的行,并尝试打开一个新的终端,这时可以在终端上看到我的用户名。接着,我关闭了所有终端,打开了一个新的终端并输入kafka和tab,但是没有像之前一样出现任何选项。然后,我打开了.profile文件,并发现kafka路径仍然被添加了。然后,我尝试执行echo $PATH命令,但是这次却没有看到kafka路径。
我非常困惑这里发生了什么。您能否请解释一下,并告诉我如何每次打开终端都加载.profile文件,以及为什么在对PATH执行echo时不再看到kafka路径?
.bashrc
后,你必须source你的.bashrc
才能看到更改。因此,在进行更改后,在命令提示符下输入. ~/.bashrc
(这是“点空格~/.bashrc
”)。 - David C. Rankin.bashrc
文件中弄乱了一些东西,导致它无法清洗源代码。以root
(或另一个用户和su
)的身份登录,然后切换到您的用户目录并编辑您的~/.bashrc
文件,删除有问题的内容即可。 - David C. Rankin