option to use predefined output formats

This commit is contained in:
2026-06-14 20:04:47 +02:00
parent c1b5190c6a
commit 6062602d09
+37 -1
View File
@@ -81,6 +81,38 @@ ALL_COLUMNS = [
"jobname",
]
PRESET_COLUMNS = {
"default": [
"username",
"JobID",
"Count",
"NTasks",
"CPUs",
"Nodes",
"CPU_Eff",
"waste_CPU",
"AllocMem",
"UsedMem",
"MaxRSS_max",
"MemPerCPU",
"Mem_Eff",
"waste_Mem",
"ReqWalltime",
"Walltime",
"Walltime_max",
"Time_Eff",
"jobname",],
"all": ALL_COLUMNS,
"eff": [
"username",
"JobID",
"Count",
"CPU_Eff",
"Mem_Eff",
"Time_Eff",
"jobname",],
}
# One-character aliases for sorting and output format specifications.
ALIASES = {
"u": "username",
@@ -972,6 +1004,8 @@ def parse_args(argv: list[str]) -> argparse.Namespace:
)
p.add_argument("--expr", help="arithmetic expression using column names",
default=None)
p.add_argument("-p", "--preset", help=f"use one of several preset output column formats ({','.join(PRESET_COLUMNS.keys())})",
default=None)
args = p.parse_args(argv)
@@ -989,7 +1023,9 @@ def main(argv: list[str] | None = None) -> int:
args = parse_args(argv or sys.argv[1:])
output_columns = ALL_COLUMNS
output_columns = PRESET_COLUMNS["default"]
if args.preset:
output_columns = PRESET_COLUMNS[args.preset]
if args.format:
output_columns = columns_from_fmtstr(args.format)