如何为一系列命令创建别名?

如何为一系列命令创建别名?

我知道这是一个命令,但是如何处理序列呢?

答案1

我将此作为答案,因为无法在评论中正确格式化它

foo() {
   echo foo
   echo bar
}

> foo
foo
bar

恕我直言,使用函数比使用别名有更多的自由。至少你可以正确格式化它。

高级 Bash 脚本指南

在脚本中,别名的用处非常有限。如果别名可以承担 C 预处理器的某些功能(例如宏扩展),那就太好了,但不幸的是 Bash 不会扩展别名体内的参数。 [2] 此外,脚本无法在“复合结构”(例如 if/then 语句、循环和函数)中扩展别名本身。另一个限制是别名不会递归扩展。几乎总是,无论我们希望别名做什么,都可以通过函数更有效地完成。

答案2

start cmd:> alias foo="echo foo; echo bar"
start cmd:> foo
foo
bar

相关内容