Я использовал приведенные ниже команды, чтобы найти более старое время на 30 минут, но не смог сформировать команды для добавления 30 минут.
Пример структуры ввода.
dateinput=20181214202959
inputTime=$(echo $dateinput | sed 's,\(.\{4\}\)\(.\{2\}\)\(.\{2\}\)\(.\{2\}\)\(.\{2\}\),\1-\2-\3 \4:\5:,')
param2=`date '+%Y%m%d%H%M%S' --date="$inputTime 30 minutes ago"`
echo $param2
20181214195959
Пожалуйста, дайте мнезнать шаги, чтобы добавить 30 минут, аналогичные приведенным выше.Для примера ввода даты, указанного выше, желаемое значение равно 20181214205959.
Редактировать:
С помощью команды прямой даты я могу добавлять и уменьшать в соответствии с приведенными ниже требованиями:
$date
Tue Dec 18 20:49:06 PST 2018
$date --date "-30 minutes"
Tue Dec 18 20:18:55 PST 2018
$date --date "+30 minutes"
Tue Dec 18 21:19:01 PST 2018
Мое требование - получить дату из входных данных, которая будет указана в виде 20181214202959, в формате ГГГГММДДччммсс.Это где я сталкиваюсь с проблемами.Возможность сократить время с помощью команды «30 минут назад», но не может получить будущее значение для данного времени.