1. 程式人生 > >Linux 新增自定義命令

Linux 新增自定義命令

一般來說,Shell的初始化指令碼分為2種:一種是全域性預設的,一種是使用者自己的。 全域性預設的路徑為/etc/profile在profile中,它預設會再載入/etc/bash.bashrc。 另一種使用者自己的就是$HOME目錄下的.profile它預設會載載入.bashrc檔案。 各中檔案也會載入一些其他的指令碼,這個具體視指令碼而定。 理清整個指令碼載入過程後,就動手修改,至於要在那個指令碼修改,還看個人取向,本人喜歡修改$HOME下的.bashrc。 如何新增自定義命令: alias 命令和他英文的意思一樣,“別名”。 比如我們要新增ll = ls -l 那麼就在上述指令碼中加上一句:alias ll="ls -l"

同樣,la寫法如下: alias la="ls -A" ls多彩顯示,預設會新增,但是遇上特殊的我們可以這樣寫: alias ls="ls --color" 那麼快速清理Shell的命令歷史記錄,本人自己起的別名叫clean: alias clean="history -c ; history -w" 這樣每次執行完clean history就被完全清除了,很方便。

編輯所用的 shell 配置檔案,如 bash 的 .bashrc,zsh 的 .zshrc,如加入:

alias ws="cd ~/workspace"

過載該配置檔案使更改生效,如source .bashrc。在任意位置輸入ws,即可 cd 到 workspace 目錄。

如果有很多 alias 命令,可單獨定義一個檔案存放,參考 .bashrc中 的一段說明:

# Alias definitions.

# You may want to put all your additions into a separate file like

# ~/.bash_aliases, instead of adding them here directly.

# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then

    . ~/.bash_aliases

fi

如果有多個shell,這種方法更方便管理,只需要將這個檔案新增到各shell配置檔案中即可。

方法二:將可執行檔案目錄加入PATH

1、建立存放自定義命令的目錄,如my_cmd

2、將該目錄加入path中

編輯所用的 shell 配置檔案,如 bash 的 .bashrc,zsh 的 .zshrc,加入

PATH=$PATH:~/my_cmd

也可以將該命令新增到方法一中單獨建立的自定義命令存放檔案中

3、過載該配置檔案使更改生效,如 source .bashrc

4、將自定義的可執行程式放入 my_cmd 中,在 shell 就可以直接執行了

➜  ~  mkdir ~/my_cmd

➜  ~  vi .bashrc  

➜  ~  source .bashrc

➜  ~  

➜  ~  vi .zshrc

➜  ~  source .zshrc

➜  ~  

方法三:綜合上述方法管理自定義命令

1、編輯所用的 shell 配置檔案,如 bash 的 .bashrc,zsh 的 .zshrc,加入:

if [ -f ~/shellrc ]; then

    . ~/shellrc

fi

2、建立 shellrc,加入對 shell 配置檔案的改動,如:

PATH=$PATH:~/my_cmd

alias ws="cd ~/workspace"

簡單的命令如 alias,放入shellrc。可執行檔案放入my_cmd。