使用bash functions簡化指令
有些常用的magento相關指令比較長,即使有官方縮寫也經常容易打錯。使用bash function可以自定義這些常用指令的縮寫,以進行簡化或是自行使用容易記得的縮寫。
首先進入使用者根目錄,建立一個新的檔案 “.bash_func" 並加入以下內容並儲存:
mage(){ echo “magento bash function”; }
此範例中將magento相關指令的縮寫設為mage,亦可自行選用其他縮寫,但須符合bash function命名規範。為讓此function「生效」可於已開啟的bash輸入 " . ~/.bash_func “。每次編輯 “.bash_func" 檔案並儲存之後,須再輸入" . ~/.bash_func " 指令。function生效後,在bash輸入"mage"指令便會得到如下圖結果:
繼續編輯 “.bash_func" 檔案,將mage()函式中的echo指令替換為以下內容後儲存:
magento='bin/magento'; cm=$1; shift; case $cm in dev) $magento deploy:mode:set developer;; rmgen) rm -rf generated/metadata/* generated/code/*;; enmod) $magento module:enable $*;; dismod) $magento module:disable $*;; *) $magento $cm $*;; esac
$magento變數為magento執行檔路徑,應根據安裝狀況自行帶入正確值。命令行中輸入給mage的第一個參數是自行定義的magento功能縮寫,例如「將deploy模式設定為開發者模式」的縮寫定義為"dev," 於命令行輸入"mage dev" 即可。
同理,輸入"mage rmgen"則可清除generated資料夾中所產生的程式碼。
若所需使用的magento指令需要傳入參數,例如module:enable或module:disable, 則可使用 $* 將命令行剩餘參數傳給magento.
每次開啟新的bash都必須重複 " . ~/.bash_func " 指令。若想省略此步驟,可開啟用戶根目錄中的 “.bashrc" 檔案,並新增以下內容:
# Function definitions. # You may want to put all your additions into a separate file like # ~/.bash_func, instead of adding them here directly. # See /usr/share/doc/bash-doc/examples in the bash-doc package. if [ -f ~/.bash_func ]; then . ~/.bash_func fi
以上就是使用bash function簡化指令的介紹,將這招學起來,想必能降低錯誤率呢!也希望能幫助到各位呦!喜歡歐斯瑞文章的讀者們,記得追蹤我們的FB粉絲團及IG,也別忘了訂閱電子報,隨時掌握第一手新知分享,有問題也歡迎聯繫我們喔~
我要留言