有没有办法让bash别名(或函数)的名字来自变量?
例如,是否有可能沿着这些方向做点什么:
create_alias_with_name() {
alias $1="echo a custom alias"
}
或者这些内容:
create_func_with_name() {
$1() {
"echo inside a function with a variable name"
}
}
换句话说,我更愿意拥有一些可以为我注册功能的“工厂”功能。这是否可能或超出Bash的能力?
答案 0 :(得分:4)
你有没有尝试过?你的第一个例子很好。
您可以通过添加eval
:
create_func_with_name() {
eval "$1() {
echo inside a function with a variable name
}"
}