这里通过两种方式来实现:
1. 对于比较简单的,可直接通过alias实现
比如对于 ps aux|grep xxx
这样的命令,嫌每次输入太多,可以这么做:
alias pag='ps aux|grep'
然后就可以直接用pag xxx
来查看进程信息啦!
持久化
上面这样做只能维持一时,关掉终端再打开就不起作用了。想要每次打开终端都能用,就需要持久化。
其实也很简单,编辑.zshrc(我用的是ohmyzsh,如果用bash,请编辑.bashrc),在适当位置(比如最后)添加
alias pag='ps aux|grep'
,退出编辑,执行source .zshrc
(或source .bashrc
)命令,这样pag命令就能持久化了。
2.对于比较复杂的命令,可以用函数来实现自定义
比如全局查找文件夹命令:find / -name xxx -type d
,由于变量在中间,用alias不能实现,可以用函数实现(Shell函数请参考这里)。
这里定义finddir函数:
finddir(){
find / -name $1 -type d
}
然后直接finddir xxx
就可以全局查找文件夹啦!
持久化
同样,这样临时的定义只能起到临时的作用,想要长久地使用,还需要持久化该命令。
步骤如下:
1. 新建.mycommand.sh文件
touch .mycommad.sh
(文件名前加.
是为了隐藏文件防止其被随意修改或删除)
2.编辑.mycommand.sh,添加以下内容
#! /bin/bash
# globally find dir
function finddir(){
find / -name $1 -type d
}
3.保存退出,编辑.zshrc(或.bashrc)
在最后添加 source ~/.mycommand.sh
4.保存退出,执行执行source .zshrc
(或source .bashrc
)命令,就可以持久化该命令了。
(完)