shell脚本提供了改写命令方式-alias
但是alias改写常用的是直接改写方式,比如如下操作:
alias ll "ls -alt"
alias g "gvim"
但通常情况下,有的明林需要传递参数,或者用户可以自定义话一些常用的路径,但有些文件夹路径有可能会经常改变,那么参数化的alias就会比较常用。这里介绍两种参数化alias的方式。
一、\!:+数字方式
# \!:1 ##第一个参数
# \!:2 ##第二个参数
# \!:3 ##第三个参数
# \!* ##所有参数
# \!:2* ##第二个以后所有参数
利用这种方法,可以实现参数化alias:
alias go_vsim "cd /home/lucky/\!:1/tb/sim"
alias go_env "cd /home/lucky/\!:1/tb/\!:2"
######在terminal输入######:
go_vsim pcie
go_env pcie reg_mdl
#最终就可以直接cd到目标路径
二、构造函数方式
shell构造函数语法
print_txt() {
echo "first args $1"
echo "second args $2"
echo "third args $3"
}
这里的$1~$9,表示函数的第一个。。第9个参数,那么alias可以通过构造参数化函数实现,也是一个取巧的办法,不过这种方式会依赖函数内部的命令是否支持传参。
alias test_p "test_p() {echo "first args $1";}; test_p"
########在terminal输入########
test_p hello
########打印########
first args hello