这与我之前的帖子有关。运行实际脚本,我输出如下结果:
[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
仅打印四月的记录,如果没有给出选项,则打印整个记录,依此类推。我希望我的用户能够构造条件查询字符串,例如:m == "4" && RealUser == "Maarten Lapka"
并且还以他们想要的格式输出带有他们想要的唯一字段的结果,例如:JobId && StartDate && User
,这意味着用户正在寻找那些提交的工作记录Maarten Lapka 在 4 月,只想按他提到的顺序打印作业 ID、作业开始日期和用户名。因此,一个可能的命令可能是:
torque_history.py -c 'm == "4" && RealUser == "Maarten Lapka"' -f 'JobId && ExecHost && StartDate'
和for或其他-c
的缩写在哪里。任何人都可以建议我这样做吗?可以使用吗?--constraint
-f
--format
getopt()
我的部分问题是我们使用 RHEL5 的变体(即 SL5、SLC5、CentOS),它们都以 python v2.4 作为标准,我不能确保每个站点都并行运行 v2.6。所以,我想尽可能地接近 v2.4 并getopt()
尽可能使用。我的计划是使用shedskin编译 python 代码并分发 c++ 文件以尽量减少兼容性问题。在这种情况下,我可以使用 v2.6,但我必须使用 shedskin 支持的模块,而 getopt() 就是其中之一。
对不起,如果我让你们很难,但我真的很期待一些帮助和建议。谢谢你的时间。干杯!!!