我正在使用bash shell,并且想要创建一个别名,它将对给定目录执行一些操作。假设我希望别名是“执行”,我希望它是ls和cd。我想“执行”采取一个单一的参数,这是一个目录,然后将ls,然后cd到。多个命令的Unix别名参数
execute temp
应该是等价的:
ls temp ; cd temp
所以,我怎么可以创建一个别名执行读取下一个输入执行后,再使用它作为其他两个参数?像这样?
alias execute="directory=VALUE ; ls $directory ; cd $directory"
你不能给参数(不管你如何试图隐藏它)到一个别名。某些shell的别名允许你在最后附加一些东西,把别名定义为'alias tstR ='doSomething''(注意尾部空格),它将用你在'tstR'之后输入的内容设置cmd行。阅读关于shell函数,它们被设计为处理参数。祝你好运。 – shellter