更改目录时自动列出目录内容

更改目录时自动列出目录内容

我是 ~/.bash_aliases 文件的忠实粉丝,并且我试图让命令cd在我更改目录时自动列出目录的内容。

在我的 .bash_aliases 文件中,我输入了alias cd='cd $1 && ls .',保存了文件,然后获取文件以加载它。现在,当我运行 时cd /,我得到了预期的输出,但我的目录没有改变。我留在我的主目录中。

任何帮助深表感谢。

答案1

您实际上无法使用别名来执行此操作,因为别名不使用命令行参数。

您可以使用 shell 函数和内置命令 来执行此操作command。该command命令告诉 shell 仅使用命令的内置版本cd,而不是函数。这是必要的,以避免函数中的递归:

cd() {
    command cd "$1" && ls
}

相关内容