这与我之前的文章here有关。运行实际脚本时,我输出如下结果:
[root@test_vm /]# torque_history.py -m 4
Job Id User Real User Start Date S End Date Exec Host Queue
----------- -------- -------------- -------------- - -------------- ----------- -------
0.vmtest2 dteam001 Kashif M. Raza 18/04 16:53:03 C 18/04 16:53:05 vmtest1.abc express
2.vmtest2 dteam007 Arnau Hahkala 19/04 13:21:19 C 19/04 13:23:26 vmtest3.abc medium
....
....
160.vmtest2 sgmatlas Andrew Lloyd 30/04 15:44:36 C 30/04 15:54:04 node029.abc short
162.vmtest2 sgmops Maarten Lapka 30/04 16:44:36 C 30/04 16:45:48 vmtest1.abc express
---------------------------------
107 records in history (0.04 sec)
-m 4
只打印4月份的记录,如果没有选项,则打印整个记录,依此类推。我希望我的用户能够构造条件查询字符串,比如:m == "4" && RealUser == "Maarten Lapka"
,并且以他们想要的格式输出结果,其中只有他们想要的字段,比如:JobId && StartDate && User
,这意味着用户正在寻找由Maarten Lapka在四月提交的作业记录,并且只想打印作业id、作业开始日期和用户名按照他提到的顺序。因此,一个可能的命令是:
torque_history.py -c 'm == "4" && RealUser == "Maarten Lapka"' -f 'JobId && ExecHost && StartDate'
其中-c
是--constraint
的缩写,-f
表示{getopt()
?在
我的问题是我们使用RHEL5的变体(即SL5、SLC5、CentOS),它们都是标准的PythonV2.4,我不能保证每个站点都并行运行v2.6。因此,我希望尽可能接近v2.4,并尽可能使用getopt()
。我的计划是使用shedskin编译python代码并分发c++文件,以尽量减少兼容性问题。在这种情况下,我可以使用v2.6,但我必须使用shedskin支持的模块,getopt()就是其中之一。在
我很抱歉,如果我让你们很难,但我真的很期待一些帮助和建议。谢谢你的时间。干杯!!!在
optparse
是纯Python,因此如果需要,我会忘记getopt()
并将其放入您的应用程序中。在别忘了创建
external/__init__.py
。在相关问题 更多 >
编程相关推荐