加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何使用bash编写命令行工具

发布时间:2020-12-16 01:47:00 所属栏目:安全 来源:网络整理
导读:我想编写一个像git这样的命令行工具,它将遵循POSIX标准.它将采用像–help或-h,– version ..等选项.但我没有得到如何做到这一点.任何人都可以告诉我如何使用bash脚本执行此操作.请帮我.这对我来说很新鲜. 示例:如果我的工具名称是Check-code,那么我想使用该
我想编写一个像git这样的命令行工具,它将遵循POSIX标准.它将采用像–help或-h,– version ..等选项.但我没有得到如何做到这一点.任何人都可以告诉我如何使用bash脚本执行此操作.请帮我.这对我来说很新鲜.

示例:如果我的工具名称是Check-code,那么我想使用该工具;

Check-code --help

要么

Check-code --version

解决方法

据我所知,“长选项”,如–help和–version不是POSIX标准,而是GNU标准.对于命令行实用程序,POSIX标准说:

由连字符和单个字母或数字组成的参数(例如“a”)称为“选项”(或历史上称为“标志”).

要支持POSIX短选项选项,值得了解getopts(网上有教程),但它不支持GNU长选项.

对于长期选择,你必须自己动手:

filename=default
while (( $# > 0 ))
do
    opt="$1"
    shift

    case $opt in
    --help)
        helpfunc
        exit 0
        ;;
    --version)
        echo "$0 version $version"
        exit 0
        ;;
    --file)  # Example with an operand
        filename="$1"
        shift
        ;;
    --*)
        echo "Invalid option: '$opt'" >&2
        exit 1
        ;;
    *)
        # end of long options
        break;
        ;;
   esac

done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读