![]() |
乖乖的骆驼 · C语言, C++ IO 总结. ...· 12 月前 · |
![]() |
刀枪不入的生姜 · Swift字符串截取与Range使用 - ...· 1 年前 · |
![]() |
博学的苦瓜 · 在OpenCV中将YUV转换为BGR或RGB ...· 1 年前 · |
![]() |
听话的板栗 · java calculate md5sum-掘金· 1 年前 · |
![]() |
读研的红薯 · Jenkins pipeline 4 -- ...· 1 年前 · |
我试图在Ansible中自动化一些任务,虽然我已经完成了其他工作,但我需要有一个start_time和end_time变量来为当前的时间戳增加时间,因为ServiceNow系统在创建更改请求时不接受当前的时间戳。
例如,我有一个变量start_time作为
"{{ lookup('pipe', date +\"%Y-%m-%d %r\"') }}"
,但是我需要以当前的时间+5分钟为例。在end_date上也是一样,但是大约是+15分钟。
发布于 2021-11-23 14:41:37
如果要使用
lookup
_plugins和
pipe
,只需使用
date +"%Y-%m-%d %r" -d "5 mins"
添加5分钟即可。
多亏了
尽管如此,我们还是建议使用facts中的
ansible_date_time
这样的变量。
date_time:
date: '2021-11-23'
day: '23'
epoch: '1637678908'
hour: '15'
iso8601: '2021-11-23T14:48:28Z'
iso8601_basic: 20211123T154828773386
iso8601_basic_short: 20211123T154828
iso8601_micro: '2021-11-23T14:48:28.773386Z'
minute: '48'
month: '11'
second: '28'
time: '15:48:28'
tz: CET
tz_offset: '+0100'
weekday: Tuesday
weekday_number: '2'
weeknumber: '47'
year: '2021'
您可以在那里使用
epoch
、
minute
或适合您的用例的内容。
发布于 2021-11-23 15:18:12
有点像?
{{ ansible_date_time.date }}
{{ ansible_date_time.hour|int +1|int }}
{{ ansible_date_time.minute|int +15|int }}
发布于 2021-11-23 18:10:13
您可以使用
strftime
过滤器来格式化时间,使用Ansible的构建--实际上是收集当前时间,并使用一点算法来添加偏移量。
- hosts: localhost
tasks:
- debug:
- "{{ '%Y-%m-%d %r' | strftime(ansible_facts.date_time.epoch | int + 300 ) }}"
- "{{ '%Y-%m-%d %r' | strftime(ansible_facts.date_time.epoch | int + 900 ) }}"
TASK [debug] *******************************************************************
![]() |
听话的板栗 · java calculate md5sum-掘金 1 年前 |