Pen*_*ica 8 unix linux bash shell
对于我正在处理的项目,我需要能够在Debian shell中定义包含其他别名的别名.
让我们看一个代码示例,以使事情更清晰.
alias foo=fooalias bar=bar如果我运行type foo它返回foo is aliased to 'foo',并type bar返回bar is aliased to 'bar'.到此为止一切都很好.现在,我遇到了问题.
alias foobar=$foo$bar不行.type foobar回报foobar is aliased to ''.
我已经尝试过alias foobar=${foo}${bar}它也不起作用.
一旦我开始工作,在最终版本中我实际上需要两个别名之间的一些文本,想象如下:alias fooandbar=${foo}and${bar}.
有人可以帮忙吗?
anu*_*ava 14
要在另一个别名中重用别名,请使用:
foobar='foo;bar'
Run Code Online (Sandbox Code Playgroud)
但是我建议你考虑使用shell函数来更好地控制它.
遵循@anubhava 的明智建议:
foo() { echo foo; }
bar() { echo bar; }
foobar() { echo "$(foo)$(bar)"; }
fooandbar() { echo "$(foo)and$(bar)"; }
Run Code Online (Sandbox Code Playgroud)
里面{}需要空格和分号。