В генераторе данных для нагрузочного тестирования ETL используется команда date чтобы получить часы, минуты и секунды. По-умолчанию они имеют "0" в качестве префикса что с свою очередь приведет к ошибкам в "математике" bash
$ echo $(( 60 - $(date +%S) )) -bash: 60 - 09: value too great for base (error token is "09")
Можно использовать sed чтобы убрать начальный ноль
$ echo $(( 60 - $(date +%S | sed -e 's/^0//') ))
Но на StackOverflow нашлось более красивое решение - использовать padding modifiers в date
$ echo $(( 60 - $(date +%-S) ))
Полный список модификаторов есть в man date
.
Комментариев нет:
Отправить комментарий