如何编写在终端启动时显示所有别名的脚本

How do I write a script that shows all aliases upon startup of terminal

我是新用户,正在学习使用Linux。我目前 运行 Ubuntu 18.04 创建了几个别名,并保存在 ~/.bashrc 目录中。我正在尝试编写一个欢迎脚本,该脚本还会在启动时显示当前别名。我目前的代码如下:

    #! /bin/bash
    echo -e "\nWelcome $USER"
    echo -e "Today's date is: \c"
    date
    echo -e "\vHave \vA \VGreat \vDay! \c"
    echo -e "\nCurrent aliases for reference are:"
    alias

在启动时,或者 运行 脚本本身,欢迎消息运行但实际的别名命令没有运行?

要事第一:

(...) saved in the ~/.bashrc directory. (...)

嗯,我必须指出 .bashrc 是一个文件,而不是一个目录,并且是 Bash startup files 的一部分。

也就是说,运行 脚本中的 alias 命令无法按预期工作的原因是它是一个 shell builtin, and when invoking it from a script will not behave as if running it from your shell

因此,您可以做的最快的事情就是将您的别名存储在不同的文件中,例如 ~/.bash_aliases 并确保通过将其添加到您的 .bashrc 文件来加载它:

if [ -f ~/.bash_aliases ]; then
    source ~/.bash_aliases
fi

然后直接从脚本中读取该文件:

#! /bin/bash

echo -e "\nWelcome $USER"
echo -e "Today's date is: \c"
date
echo -e "\vHave \vA \VGreat \vDay! \c"
echo -e "\nCurrent aliases for reference are:"
cat ~/.bash_aliases