我想创建一个类似于:
的bash配置文件$ga file_1 file_2 file_3 ... file_n
其中ga
为git add
。
这是一个例子,但问题在于论证数量的变化。
如何在Bash中创建别名或函数来执行此操作?
答案 0 :(得分:2)
我不知道你的例子是否过于简单,因为在这种情况下你不需要制作你的别名"意识到"变化的参数数量.. alias ga =' git add' 然后 ga file1 file2 file3 实际上会按你的意愿工作。 shell将简单地将所有参数传递给别名。
答案 1 :(得分:1)
别名本身不处理参数。相反,在某些编程语言中将自己视为宏。当shell遇到一个别名命令时,它只是用定义替换该别名。
例如,如果你有
alias ga='git add'
然后,当Bash发现命令ga
只是将其替换为git add
时。您编写的所有参数都会按原样传递给git add
。
如果您需要对参数进行一些处理,或重新排序或替换或删除它们,则无法使用别名。相反,你必须使用功能:
function ga() {
# Call git add with reordered arguments
git add $1 $3 $2
}
如需了解更多信息,请read the Bash manual page。如果你只是搜索一下,那么互联网上还有许多教程。