Я пытаюсь манипулировать метками времени, используя дату в сценарии оболочки. Мой код такой
echo $(date -d '+10 mins' +%s%N)
Это напечатает время 10 минут от текущего времени в наносекундах
1554242194228787268
Когда я перемещаю оператор echo внутри цикла for, чтобы выполнить пользовательское действие на основе переменной цикла.
for repi in `seq 1 2`;
do
lp_incr=$((repi*10))
n_incr='+'$lp_incr' mins'
echo $(date -d $n_incr +%s%N)
done
Получение такой ошибки
дата: дополнительный операнд '+% s% N'
Удалить этот дополнительный операнд не поможет мне просмотреть только дату
for repi in `seq 1 2`;
do
lp_incr=$((repi*10))
n_incr='+'$lp_incr' mins'
echo $n_incr
echo $(date -d $n_incr)
done
Снова получаю другую ошибку
+ 10 минут
date: в аргументе 'mins' отсутствует ведущий '+';
$ n_incr содержит '+', но выдает ошибку.
Кажется, я что-то упускаю в этом. Весь мотив в том, чтобы генерировать временную метку в нано секундах для некоторого интервала.
Заранее благодарим за все предложения или альтернативные подходы.