版本 2 和 3+ 的 Symfony 控制台命令别名

Symfony console command alias for version 2 and 3+

当在控制台上使用 Symfony 进行大量工作时,很高兴为 php app/console 的短调用设置别名,到目前为止我有:alias c=php app/console

但从 Symfony 版本 3 开始,控制台现在位于 bin/console。我如何创建一个别名,无论我所在目录的 Symfony 版本如何?因为我工作不同的项目版本。

我试过了,但它不适用于你传递给它的命令... c='[[ -f bin/console ]] && php bin/console || php app/console'

蛋壳, 托尔斯滕

我刚才也有同样的需求。您可以为此使用 bash 函数。在你的情况下,一个例子是:

c()
{
    if [ -f bin/console ]; then
        php bin/console "$@"
    elif [ -f app/console ]; then
        php app/console "$@"
    else
        echo "No console found"
    fi
}

您将其定义在与您之前的别名相同的位置,就像在您的 .bashrc 中一样。确保删除您的别名。

OhMyZsh Symfony plugin中,(部分)排列如下:

# plugins/symfony2/symfony2.plugin.zsh

_symfony_console () {
  echo "php $(find . -maxdepth 2 -mindepth 1 -name 'console' -type f | head -n 1)"
}


#Alias
alias sf='`_symfony_console`'