день года, как я могу получить неделю год с помощью Bash?получить неделю года с дня года
ответ
Использование команды date
, вы можете показать неделю года, используя «% V» параметр формата:
/bin/date +%V
Вы можете сказать date
для разбора и форматирования дат вместо текущего с помощью "-d" параметр:
/bin/date -d "20100215"
Затем, смешав два варианта, вы можете применить пользовательский формат для настраиваемого даты:
/bin/date -d "20100215" +%V
Слишком плохо, что ваше решение работает только с версией даты GNU. Версия даты Solaris не поддерживает ключ -d и параметр формата% V. – basvdlei
Также '% U' (начало в воскресенье, 00-53) или'% W' (начало понедельника, 00-53) (в дополнение к '% V' (ISO, начало понедельника, 01-53)) в зависимости от недели -numbering, которую вы используете. –
Дата версии Solaris, которая не может поддерживать -d, может быть решена с заменой версии даты sunfreeware.com. – conandor
Если вы используете GNU date
вы можете использовать относительные даты, как это:
$ doy=193
$ date -d "Jan 1 +$((doy -1)) days" +%U
28
Это даст вам очень упрощенный ответ, но не полагаться на date
:
$ echo $((doy/7))
который не обращает внимания на день недели.
Вот демонстрация систем нумерации недель:
$ printf "\nDate\t\tDOW\tDOY\t%%U %%V %%W\n"; \
for d in "Jan "{1..4}" 2010" \
"Dec "{25..31}" 2010" \
"Jan "{1..4}" 2011"; \
do printf "%s\t" "$d"; \
date -d "$d" +"%a%t%j%t%U %V %W"; \
done
Date DOW DOY %U %V %W
Jan 1 2010 Fri 001 00 53 00
Jan 2 2010 Sat 002 00 53 00
Jan 3 2010 Sun 003 01 53 00
Jan 4 2010 Mon 004 01 01 01
Dec 25 2010 Sat 359 51 51 51
Dec 26 2010 Sun 360 52 51 51
Dec 27 2010 Mon 361 52 52 52
Dec 28 2010 Tue 362 52 52 52
Dec 29 2010 Wed 363 52 52 52
Dec 30 2010 Thu 364 52 52 52
Dec 31 2010 Fri 365 52 52 52
Jan 1 2011 Sat 001 00 52 00
Jan 2 2011 Sun 002 01 52 00
Jan 3 2011 Mon 003 01 01 01
Jan 4 2011 Tue 004 01 01 01
- 1. получить NSDate с дня года
- 2. Как получить неделю года в gwt
- 3. Установить первую неделю года с первого дня года до следующего понедельника
- 4. Flex, как получить неделю года для даты?
- 5. Расчет дня, месяца, года
- 6. HQL запрос, чтобы получить неделю года
- 7. Subset XTS на неделю года
- 8. Форматирование месяца, дня и года
- 9. Swift - Получить дату со дня года
- 10. Как сделать ISO8601 производят ивритский день года, неделю года?
- 11. Найти последнюю неделю года с java.time
- 12. R - Гистограмма для Дня года
- 13. Получить ISO неделя и неделю года в d3
- 14. конвертировать из года и дня года в bash
- 15. Неделя года
- 16. Преобразование года и дня года в индекс datetime в пандах
- 17. получить имя дня от дня число года android
- 18. Как получить неделю года с использованием даты ввода от пользователя
- 19. Получить неделю Номер года с обычным днем в качестве начального дня недели
- 20. Получите неделю года с даты в сверле apache
- 21. Как отображать строки, происходящие каждую неделю года?
- 22. Конец года с Mysql
- 23. iOS Дата получения от Дня Года
- 24. Извлечение совпадающего года на неделю в postgresql
- 25. Разбиение таблицы на год и неделю года
- 26. Изменить первую неделю года в fullcalendar.io
- 27. Как получить дату с номера дня и года?
- 28. SQL-запрос для возврата «имени дня» с использованием «дня года»
- 29. mysql: date_format конвертирует первую неделю 2016 года на последнюю неделю
- 30. Функция SQL для финансового дня года
Хотя вы можете получить ответ на это здесь, я думаю, что этот вопрос может быть более подходящим для нашей сестры сайта stackoverflow.com. – Chopper3
Не только вопрос программирования, но и подозрительно выглядит как домашнее задание. Кстати, использование Bash для этого - хороший пример использования неправильного инструмента для работы. –
+1 не используйте Bash для расчета даты. Современные машины Linux/UNIX по умолчанию будут поставляться с обновленным Python или Perl. Используйте лучший инструмент для работы. – 2010-07-12 11:07:00