У меня была аналогичная проблема, я нашел пакет dateutils для OpenBSD 6.4. Для меня это был простой pkg _add dateutils.
#!/bin/ksh
# Using dateutils dadd (get current date) -1month -f (format to strftime)
# Set Year in YYYY formant y is YY format
lastMonth=$(dadd date -1mo -f "%Y.%m")
echo $lastMonth
mkdir /home/$usr/History/$lastMonth
Мой вывод здесь
#2018.11
ОБНОВЛЕНИЕ 1
Я запускаю эту команду 2018.12.10
HostNameHere# dadd date -1125d -f "%Y.%m"
Результат
2015.11
Он поддерживает любое сложение или вычитание времени, которое я могу сказать. Вот команды, помогающие распечатать.#dadd -h
(Это не вся распечатка.Там больше информации об опциях.
Usage: dadd [OPTION]... [DATE/TIME] [DURATION]
Add DURATION to DATE/TIME and print the result.
If DATE/TIME is omitted but DURATION is given, read a list of DATE/TIMEs from
stdin. If DURATION is omitted but DATE/TIME is given, read a list of DURATIONs from
stdin.
Durations are specified as nY, nMO, nW, or nD for years, months, weeks, or days
respectively, or nH, nM, nS for hours, minutes, and seconds, where N is a
(possibly negative) number. The unit symbols can be written lower-case as well
(y, mo, w, d, h, m, s) and the unit symbol `d' can be omitted.
Note that duration addition is not commutative!
2000-03-30 +1mo +1d -> 2000-05-01
2000-03-30 +1d +1mo -> 2000-04-30
Здесь — команды.
Здесь — параметры форматирования.
apt-cache pkgnames
предназначен для использования во вкладке -завершение :он быстро генерирует список всех имен пакетов, apt
известных для основной архитектуры системы (установленных, доступных удаленно или просто упомянутых в некоторых отношения других пакетов ). Он не предназначен для непосредственного потребления человеком и не требует много времени для фильтрации, поэтому в нем перечислены пакеты, которые другие команды не обязательно будут отображать (, например виртуальные пакеты ).
dpkg --list
перечисляет все известные dpkg
пакеты вместе с их статусом, описанием и версией; dpkg
не знает об удаленных пакетах, поэтому в основном это список пакетов, которые установлены или удалены (, но не очищены ).
apt list
перечисляет все известные apt
пакеты, а также репозитории, в которых они доступны, установлены ли они, доступные версии и возможность их обновления. Он использует тот же базовый список пакетов, что и apt-cache pkgnames
, но включает любую сконфигурированную архитектуру; например, в типичных мультиархивных конфигурациях amd64
/ i386
apt-cache pkgnames
не будет отображать толькоi386
-пакеты, а apt list
будет.
dpkg --list
и apt list
поддерживают различные параметры и фильтры для ограничения того, что они отображают.