docopt 安装及基本应用
什么是 docopt
docopt是一种python 编写的命令行执行脚本的交互语言。
它是一种语言!
它是一种语言!
它是一种语言!
使用这种语言可以在自己的脚本中,添加一些规则限制,这样脚本在执行的时候就必须按照这种格式来执行,同时,也可以很方便的编写一些帮助信息(其实就是很多软件在输入-h时候显示的信息,例如php -h会显示所有 php的执行指令,并且也通过docopt限制了php 指令的格式),下面将会有一些简单的例子。
docopt的安装
docopt有很多种版本,分别支持不同的语言,最简答的docopt支持python脚本,docopt.java支持java脚本,docopts则是支持shell脚本的(下面的例子主要以docopts为例),具体的可以参见github的docopt说明
安装docopt
以mac os x为例安装,安装docopts前首先需要安装docopt,有两种安装方法
方法一
比较简单的方法是直接用 pip 安装, pip install docopt==0.6.2
有些mac可能不支持直接pip 指令,需要先安装pip
方法二
也可以在github上下载源码(docopt是开源项目),然后通过python setup.py install 安装
安装docopts
安装docopts就必须使用上面安装docopt的方法二,在GitHub上下载源码,然后 使用python安装,下载地址
docopts的使用
好了,现在可以在我们的shell脚本中使用docopt编辑一些自己的规则了,例如在下面这个脚本例子中
eval "$(docopts -V - -h - : "$@" <<EOF
Usage:
./test.sh wel
./test.sh bye
Options:
wel welcome.
bye say goodbye.
----
EOF
)"
if $wel ; then
echo "welcome"
fi
if $bye ; then
echo "goodbye"
fi
这个test.sh脚本,在执行的时候 ./test.sh -h 可以看到帮助说明,并且这种定了了该脚本执行只能是wel 和 bye两种参数格式
docopt还有很多种定义命令执行方式的语法,详细的参见docopt语法介绍