bash完成的python接口

bash_completion的Python项目详细描述


为bash完成提供python接口的包

用法示例

在最简单的情况下,我们可以使用bash_complete_line()

frombash_completionimportbash_complete_lineIn[1]:bash_complete_line('git s',return_line=True)Out[1]:{'git shortlog','git show','git show-branch','git stage','git stash','git status','git submodule','git subtree'}

但是,还有一个较低级别的api,它与实际的bash完成更为接近 界面,为那些需要它的人!

frombash_completionimportbash_completionsdefget_completions(line):split=line.split()iflen(split)>1andnotline.endswith(' '):prefix=split[-1]begidx=len(line.rsplit(prefix)[0])else:prefix=''begidx=len(line)endidx=len(line)returnbash_completions(prefix,line,begidx,endidx)In[1]:get_completions('git s')Out[1]:({'shortlog','show','show-branch','stage','stash','status','submodule','subtree'},1)

您也可以将其用作一个简单的命令行实用程序:

$ python -m bash_completion "ls --s"
ls --show-control-chars
ls --si
ls --size
ls --sort
ls --sort=

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java将json反序列化为列表<Object>   Spring框架中的java回滚机制   java如何使反射在JDK 16及更高版本上工作?   java终结器如何导致可移植性问题?   java Hibernate使用ON子句或alternative左连接获取   java aws codebuild maven项目失败“保存的引用不明确”   并发Java多线程读取单个大文件   java如果输入仅由1和0组成,请将其从二进制转换为十进制   java在RealmRecyServiceAdapter上调用updateData实际上并没有更新数据   javajsf:h commandlink操作是打开同一页面的新弹出窗口,而不是调用bean方法   java我们可以为其中一个变量同时添加@Column和@OneToOne注释吗?   java JBoss AS 7自定义登录模块从未调用   如何检查Java中是否存在数组中的元素   java Spring重试:未调用带@Recover注释的方法   如何解析带有Java错误HTTP格式问题的php消息   java如何在weblogic中部署可选的包共享库   java将配置单元中的数据集保存为avro格式的合并列   用Guice注入java泛型   java单选按钮组和额外选项   javajackson:如何读取字符串作为列表?