当前位置: 技术问答>linux和unix
linux自定义命令方式
来源: 互联网 发布时间:2017-03-23
本文导语: 我知道的自定义命令的方法有两种,一种是通过~/.bashrc文件添加alias,如alias cdoc='cd ~/Documents',alias nautilus='nautilus /dev/null 2>&1 &'等,另一种是在PATH变量目录下写脚本(~/bin)。 alias多了以后,打开终端时终端提示...
我知道的自定义命令的方法有两种,一种是通过~/.bashrc文件添加alias,如alias cdoc='cd ~/Documents',alias nautilus='nautilus /dev/null 2>&1 &'等,另一种是在PATH变量目录下写脚本(~/bin)。
alias多了以后,打开终端时终端提示符(PS1)需要很久才显示出来,如前alias例子,我在~/.bashrc中添加了很多类似nautilus这种alias(一行解决,也可写脚本),有时候又必须在alias中添加一条,比如我自定义了命令re(~/bin下),
re /etc要能够进入/etc目录中(可能脚本需要改),直接re /etc无法进入,alias re='. re'后才可以
如果一行就可以解决的,比如前边的nautilus这种alias,写一个脚本放在~/bin下感觉有点不合算
问题:哪些类型自定义命令适合alias,哪些适合放在$PATH路径下(~/bin等),保证alias不至于多到影响速度,大家都怎么解决这个问题的?
alias多了以后,打开终端时终端提示符(PS1)需要很久才显示出来,如前alias例子,我在~/.bashrc中添加了很多类似nautilus这种alias(一行解决,也可写脚本),有时候又必须在alias中添加一条,比如我自定义了命令re(~/bin下),
re /etc要能够进入/etc目录中(可能脚本需要改),直接re /etc无法进入,alias re='. re'后才可以
如果一行就可以解决的,比如前边的nautilus这种alias,写一个脚本放在~/bin下感觉有点不合算
问题:哪些类型自定义命令适合alias,哪些适合放在$PATH路径下(~/bin等),保证alias不至于多到影响速度,大家都怎么解决这个问题的?
|
文件系统层次结构标准https://zh.wikipedia.org/zh/%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E5%B1%82%E6%AC%A1%E7%BB%93%E6%9E%84%E6%A0%87%E5%87%86 这里有说哪些程序一般放在/bin/下等,按照标准的定义再结合自己的理解,应该能归纳一些应该放在这个目录下的程序.
至于别名的运行效率,没什么见解.不过按标准bin目录下应该是二进制格式文件,脚本放那里不太合适吧.
至于别名的运行效率,没什么见解.不过按标准bin目录下应该是二进制格式文件,脚本放那里不太合适吧.
|
alias多了当然会慢,因为shell启动的时候要读它,并且要保存在内存里。但我觉得几十个alias应该不至于让shell启动变慢吧?
而放在bin里,只有在你敲一个命令回车的时候才会去搜索它。
至于脚本放哪,我建议你放到你的home的某个文件夹下,并从自己的.bashrc或者.profile文件中将这个路径append到path上。毕竟这些脚本只给你自己用
而放在bin里,只有在你敲一个命令回车的时候才会去搜索它。
至于脚本放哪,我建议你放到你的home的某个文件夹下,并从自己的.bashrc或者.profile文件中将这个路径append到path上。毕竟这些脚本只给你自己用