JQ pScheduler Library - perfsonar/pscheduler GitHub Wiki
This page describes
iso8601
- Conversion of ISO 8601 Values
duration_as_seconds(value)
Calculates the number of seconds in an ISO 8601 duration.
Parameters
value
- A string containing an ISO 8601 duration (e.g., P1W3DT9H
).
Return Value
An integer (e.g., 896400
).
Example
import "pscheduler/iso8601" as iso; iso::duration_as_seconds("PT1H2M3S")
-> 3723
timestamp_parsed(timestamp)
Parses an ISO8601 timestamp into its component parts.
Parameters
timestamp
- A string containing a valid ISO 8601 timestamp.
Return Value
A JSON object containing the following pairs:
year
,month
,day
- The date.hour
,minute
,second
- If provided, the time of day.offset_hr
,offset_min
- If provided, the offset from UTC represented by the time in hours and minutes.
Example
import "pscheduler/iso8601" as iso; iso::timestamp_parsed("2017-05-04T02:15:18-04:00")
-> {
"year": "2017",
"month": "05",
"day": "04",
"hour": "02",
"minute": "15",
"second": "18",
"offset_hr": "-04",
"offset_min": "00"
}
si
- Conversion of numbers in SI units
as_integer(value)
Converts a number or string containing a number and a [SI whole-unit prefix] https://www.nist.gov/pml/weights-and-measures/prefixes) to an integer value.
Parameters
value
- A string containing the value to be converted (e.g., 500k
, 16Mi
or 22030
).
Return Value
An integer (e.g., 896400
).
Examples
import "pscheduler/si" as si; si::as_integer("12ki")
-> 12288
import "pscheduler/si" as si; si::as_integer("12.34M")
-> 12340000
import "pscheduler/si" as si; si::as_integer(8675309)
-> 8675309