Как включить параметры в псевдоним bash?

Попытка создать:

alias mcd="mkdir $1; cd $1"

Получение:

$ mcd foo
usage: mkdir [-pv] [-m mode] directory ...
-bash: foo: command not found

Что я делаю неправильно?

Ответ 1

Псевдоним может заменить только первое слово команды каким-либо произвольным текстом. Он не может использовать параметры.

Вместо этого вы можете использовать функцию оболочки:

mcd()
{
  test -e "$1" || mkdir "$1"
  cd "$1"
}