Python 使用特殊命令iceweasel(debian的FirefoxWebBrowser)执行脚本
我有一个问题,我想执行我的python脚本,但使用如下特殊命令:Python 使用特殊命令iceweasel(debian的FirefoxWebBrowser)执行脚本,python,Python,我有一个问题,我想执行我的python脚本,但使用如下特殊命令: iceweasel 'info.py server.py path_install.py' 必须在客户端上键入此命令,然后打开包含以下信息的页面: info.py (= os and ip of client) server.py path_install.py 但我真的不明白从哪里开始…需求审查 看起来,你想: 从命令行调用程序 传入任意数量的python文件名 对于每个python文件,打印有关该文件的一些详细信息 概
iceweasel 'info.py server.py path_install.py'
必须在客户端上键入此命令,然后打开包含以下信息的页面:
info.py (= os and ip of client)
server.py
path_install.py
但我真的不明白从哪里开始…需求审查
看起来,你想:
- 从命令行调用程序
- 传入任意数量的python文件名
- 对于每个python文件,打印有关该文件的一些详细信息
- 使用
进行命令行参数解析(docopt
,argparse
和其他方法也是可选的)plac
- 打印一些关于该文件的信息(因为不太清楚,您想报告哪些Python文件的详细信息-可以随意修改)
iceweasel.py
调用不带参数的命令:
$ python iceweasel.py
Usage:
iceweasel.py <pythonfile>...
iceweasel.py -h
使用通配符将其用于多个文件:
$ python iceweasel.py ../*.py
---- ../camera2xml.py -----
short name: camera2xml.py
size: 567
words: 47
---- ../cgi.py -----
short name: cgi.py
size: 612
words: 63
---- ../classs.py -----
short name: classs.py
size: 485
words: 44
结论
- 命令行解析在Python中很容易
似乎是自2.7版以来Python的标准部分argparse
可以做很多事情,但需要在许多行上进行相当复杂的调用argparse
是一个很好的选择,在大多数情况下都可以快速服务器plac
在我看来是最灵活的,同时也是所需代码行中最短的docopt
- 如果您不想在每次调用脚本时调用
,那么还有其他选择python
- 使用shebang
作为脚本的第一行,将其设置为可执行,然后甚至可以删除#/usr/bin/env python
扩展名。仅适用于*nix,不适用于Windows.py
- 编写自己的
,并指定它来安装脚本。可以在任何地方使用,但需要更多的编码。另一方面,如果您希望更多用户使用该脚本,那么它可能是非常有效的解决方案,因为它可以显著简化安装过程setup.py
- 使用shebang
info.py address\u server path\u install
此命令必须在iceweasel中打开一个新页面,其中包含一些信息:path\u install客户端操作系统的IP客户端我的主要问题是获取此命令iceweaselinfo.py地址\服务器路径\安装
$ python iceweasel.py
Usage:
iceweasel.py <pythonfile>...
iceweasel.py -h
$ python iceweasel.py -h
Usage:
iceweasel.py <pythonfile>...
iceweasel.py -h
Prints internal details for arbirtary set of <pythonfile> files.
$ python iceweasel.py iceweasel.py
---- iceweasel.py -----
short name: iceweasel.py
size: 692
words: 74
$ python iceweasel.py ../*.py
---- ../camera2xml.py -----
short name: camera2xml.py
size: 567
words: 47
---- ../cgi.py -----
short name: cgi.py
size: 612
words: 63
---- ../classs.py -----
short name: classs.py
size: 485
words: 44