你们中的许多人可能已经注意到,我对 Linux 还很陌生。我特别提到的是在我的 .bashrc 文件中添加个人、用户生成的函数和别名。我不太清楚 bash 是如何工作的,但根据许多帖子,我“将其添加到我的 .bashrc 文件的末尾”。当通过终端执行命令时,这不起作用。
答案1
对于登录 shell,.profile
将在您的主目录中执行。因此,如果您在 中定义了函数.bashrc
,请确保该文件包含在.profile
以下文件中:
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
您也可以发出以下命令:
source ~/.bashrc
然后调用你的函数。这将确保包含任何文件都没有问题。
答案2
每当您打开一个新终端时,.bashrc 中的所有命令都会被执行(该文件是“来源”)。如果您向 .bashrc 添加新命令,则需要打开一个新终端或发出以下命令之一:
. ~/.bashrc
source ~/.bashrc
例如,你可以在 .bashrc 的末尾添加一个新行(每个命令都必须在新的一行上 - 嗯,这实际上是一种简化,但是对于初学者来说已经足够了),如下所示:
alias hello='echo "Hello, $USER"'
...然后,一旦您打开了一个新的、全新的终端窗口或者使用了其中一个源命令,您就应该能够输入hello
并收到来自您的机器的问候。
如果您执行了所有这些操作,但函数/别名不起作用,则您使用的特定函数或别名可能有问题。如果您怀疑是这种情况,请随时提出单独的问题。
至于教程,我发现在我开始使用 bash 时非常清楚且有用的一个是linux命令。