对POSIX命令添加XML支持的半途而废
xmlcmd的Python项目详细描述
xmlcmd是扩充标准posix命令的概念验证实验 具有超能力,例如输出XML。
可悲的是,这比任何真正的魔术都要花招。
首先,必须创建位于PATH上的第一个目录 (例如~/bin)。这不应该在whereis使用的路径上,因此如果 事情出了问题,你总是可以做$(whereis cmd)来执行受影响的 命令。
其思想是将指向xmlcmd(在正常的python setup.py install安装中创建)的符号链接放到这个目录中,以便执行许多命令。 当使用–xml选项运行这些命令时,{cmd}模块将 从xmlcmd包导入,并且main()函数与两个 arguments:命令行参数的原始列表(通常对应 到sys.argv)减去--xml,以及“original”文件的完整路径 如果未指定--xml选项,则会运行该选项。
这类似于busybox实现 通过使用argv[0]确定所需的 行动。这允许相关的逻辑被分解到一个地方。
ben$ sudo pip install xmlcmd ... ben$ ln -s $(which xmlcmd) ~/bin/ls ben$ ls --xml <an XMLish representation of a file listing...>
计划:
- 再添加一些命令(当前仅支持ls和ps)
- 在xmlcmd中放入一些实际有用的xml输出内容 用于简化其他命令帮助程序创建的包
- 比该名称的perl程序更有用的xpath命令 在我的os x和ubuntu上安装
本巴斯2011