1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #!/usr/bin/env lua
- --[[
- -- Copyright (c) 2013-2016 Marcus Rohrmoser, http://purl.mro.name/recorder
- --
- -- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
- -- associated documentation files (the "Software"), to deal in the Software without restriction,
- -- including without limitation the rights to use, copy, modify, merge, publish, distribute,
- -- sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
- -- furnished to do so, subject to the following conditions:
- --
- -- The above copyright notice and this permission notice shall be included in all copies or
- -- substantial portions of the Software.
- --
- -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
- -- NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- -- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
- -- OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- -- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- --
- -- MIT License http://opensource.org/licenses/MIT
- ]]
- --
- -- convert 'atq' output to iso dates.
- --
- -- Example:
- --
- -- To get the upcoming at job, run
- -- $ atq | atq2iso | sort --key 2 | head -n 1
- --
- local month_names_en = {'Jan','Feb','Mar','Apr', 'May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'}
- local months = {}
- for i,m in ipairs(month_names_en) do months[m] = i end
- month_names = nil
- for line in io.stdin:lines() do
- local job,wday,month,day,hour,min,sec,year,queue,uid = line:match('^(%d+)%s+([A-Z][a-z][a-z])%s+([A-Z][a-z][a-z])%s+(%d+)%s+(%d+):(%d+):(%d+)%s+(%d+)%s+([^%s]+)%s+(.*)$')
- local date = os.time{year=year,month=months[month],day=day,hour=hour,min=min,sec=sec}
- io.write(string.format('%-7s', job), ' ', os.date('%Y-%m-%dT%H:%M:%S', date), ' ', queue, ' ', uid, '\n')
- end
|