多个命令的Unix别名参数

Cap*_*ack 2 unix variables bash alias command

我正在使用bash shell,我想创建一个别名,它将对给定目录执行一些操作.假设我希望别名是"执行",我希望它能用于ls和cd.我希望"执行"采取一个参数,这是一个目录,然后它将ls,然后cd进入.

execute temp
Run Code Online (Sandbox Code Playgroud)

应相当于:

ls temp ; cd temp
Run Code Online (Sandbox Code Playgroud)

那么我如何为执行后创建一个别名来读取下一个输入,然后将其用作另外两个的参数呢?像这样的东西?

alias execute="directory=VALUE ; ls $directory ; cd $directory"
Run Code Online (Sandbox Code Playgroud)

dev*_*ull 6

函数更适合此类任务:

execute() {
  ls "$1"; cd "$1";
}
Run Code Online (Sandbox Code Playgroud)

通过说出来调用它execute temp.