【发布时间】:2019-07-03 11:44:21
【问题描述】:
我想知道您是否可以为命令设置别名,并在同一行代码中使用它,请参见以下示例:
alias php=/opt/plesk/php/5.6/bin/php; php -v;
我希望它输出 PHP 5.6。
alias php=/opt/plesk/php/7.3/bin/php; php -v;
我希望它输出 PHP 7.3。但是,我得到的是:
php -v
# outputs 5.6
alias php=/opt/plesk/php/5.6/bin/php; php -v;
# outputs 5.6
alias php=/opt/plesk/php/7.3/bin/php; php -v;
# outputs 5.6
php -v
# outputs 7.3
我尝试了 && 运算符,但结果相同。
我想在 gitlab 持续集成脚本中使用它,它通过传递字符串通过ssh -t 执行脚本。但是我正在调用几个 php 函数,我不想每次都粘贴完整的 php 路径:
ssh -v -tt $SSH_HOST_NAME "__my_php_commands_here__"
【问题讨论】:
-
a gitlab continuous integration script批处理 shell 不支持别名(默认情况下)。只需php() { command /opt/plesk/php/7.3/bin/php "$@"; }。