如何在 Mac 终端中创建别名?

How to create alias in Mac Terminal?

每次我输入 cd foldercd .. 我希望它在 运行 ls 之后立即出现。

有办法吗?

我强烈建议不要覆盖 cd 本身,但本质上你想做的是:

alias cdl='cd $*; ls'

这里cdl是你的新命令的名称(如果你真的坚持也可以是cd)然后你将它分配给另一个命令,它本身就是两个命令的序列命令:

  • cd $* 其中 $* 指的是您传递给 cdl
  • 的所有参数
  • ls 您可以将 ls 的执行条件设置为 cd 的成功,即只有 运行 如果 cd 被赋予了一个有效的文件夹,否则什么都不做:
alias cdl='cd $* && ls'

更新

@Cyrus,你是对的,这在别名中不起作用(尽管如果你直接从命令行 运行 就可以)。这虽然有效:

alias cdl='ls $*; cd $*'

重新发布 another post

的答案

将其放入 .zshrc 中为 cl 创建别名:

#print contents after moving to given directory
cl()
{
    cd $@
    ls
}

要覆盖 cd(不推荐),将其放入 .zshrc:

#print contents after moving to given directory
cd()
{
    builtin cd $@
    ls
}