Shell腳本通過參數名傳遞參數的實現代碼
更新時間:2020年02月07日 09:29:11 作者:張志翔
這篇文章主要介紹了Shell腳本通過參數名傳遞參數的實現代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
平常在寫shell腳本都是用$1,$2…這種方式來接收參數,然而這種接收參數的方式不但容易忘記且不易于理解和維護。Linux常用的命令都可指定參數名和參數值,然而我們怎樣才能給自己的shell腳本也采用參數名和參數值這樣的方式來獲取參數值呢?而不是通過$1,$2這種方式進行獲取。下面的例子定義了短參數名和長參數名兩種獲取參數值的方式。其實是根據getopt提供的特性進行整理而來。
#!/bin/bash while getopts i:o:p:s:t: OPT; do case ${OPT} in i) in_file=${OPTARG} ;; o) out_dir=${OPTARG} ;; p) product_code=${OPTARG} ;; s) software_version=${OPTARG} ;; t) type=${OPTARG} ;; \?) printf "[Usage] `date '+%F %T'` -i <INPUT_FILE> -o <OUTPUT_DIR> -o <P RODUCT_CODE> -s <SOFTWARE_VERSION> -t <TYPE>\n" >&2 exit 1 esac done # check parameter if [ -z "${in_file}" -o -z "${out_dir}" -o -z "${product_code}" -o -z "${software_version}" -o -z "${type}" ]; then printf "[ERROR] `date '+%F %T'` following parameters is empty:\n-i=${in_file}\n-o=${out_dir}\n-p=${product_code}\n-s=${software_version}\n-t=${type}\n" exit 1 fi # block enc java -jar openailab-command-line-auth-0.1-SNAPSHOT.jar ${in_file} ${out_dir} ${product_code} ${software_version} ${type}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
fedora 23 lvm2格式 根目錄磁盤空間不足 擴容方法
下面小編就為大家?guī)硪黄猣edora 23 lvm2格式 根目錄磁盤空間不足 擴容方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02shell腳本中執(zhí)行python腳本并接收其返回值的例子
這篇文章主要介紹了shell腳本中執(zhí)行python腳本并接收其返回值的例子,本文重點在于如何接收python腳本的返回值,需要的朋友可以參考下2014-08-08