The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: Определение количества дней в месяц..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Определение количества дней в месяц..."  +/
Сообщение от auto_tips (ok) on 14-Ноя-08, 00:08 
В функции решается задача как определить количество дней в месяце:
Необязательные параметры [месяц [год]]

days_in_month(){
  [ "$#" == "2" ] && date -d "$1/01/$2 +1month -1day" +%d
  [ "$#" == "1" ] && days_in_month $1 `date +%Y`
  [ "$#" == "0" ] && days_in_month `date +'%m %Y'`
}

Или, - односторчник - если нужно узнать количество дней в текущем месяце
   date -d  "`date +'%m/01'`+1month -1day" +%d

URL:
Обсуждается: http://www.opennet.me/tips/info/1829.shtml

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от pavlinux (ok) on 14-Ноя-08, 00:08 
Гы!

#cal

последнее число и есть дней в месяце :)
  

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от pavlinux (ok) on 14-Ноя-08, 00:11 
Давайте другую - Определение даты перехода на летнее/зимнее время - чем короче, тем КРУЧЕ  (можно на ASM_e) :)

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от ymkin (ok) on 14-Ноя-08, 10:59 
..В некоторых странах, например в Бразилии, нет фиксированной даты начала летнего времени. Она определяется каждый год, за несколько месяцев до начала лета..
[http://www.opennet.me/base/sys/date_and_time.txt.html]
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от pavlinux (ok) on 15-Ноя-08, 21:37 
Дык, у нас тоже не фиксирована!
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от Дима email(??) on 17-Ноя-08, 14:47 
cal | xargs | sed "s/ /\n/g" | tail -n 1
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от Andrey Mitrofanov on 17-Ноя-08, 15:39 
>cal | xargs |

Богато! :)

> sed "s/ /\n/g"

Здесь обычно %) используют tr " " "\n"

> | tail -n 1

$ cal|xargs|awk '{print $NF}'
30
$ cal|awk -v RS="\f" '{print $NF}'
30
$ # ;-)
$ _

...:))))))

$ x() { date -d "${1:-`date +%Y`}/${2:-`date +%m`}/01 +1month -1day" +%d; }
$ x
30
$ x 2007
30
$ x 2007 1
31
$ x 2007 2
28
$ x "" 2
29
$ _

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от Дима email(??) on 17-Ноя-08, 18:27 
Да, в линухе к одному и тому же результату можно дойти сотней разных путей. :)
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "tim toady"  +/
Сообщение от Andrey Mitrofanov on 17-Ноя-08, 19:39 
>Да, в линухе

Вообще-то это--vvv ~~девиз Perl-а: google.ru/search?q=timtowtdi

>к одному и тому же результату можно дойти сотней разных путей. :)

...?q="More+Than+One+Way"+unix

А я не 1001-ый способ решения конкретной задачи показывал, а... ну, скажем, 101-ый способ применения shell-инструментария. Возможно, кому-то интересно было. ...кроме :D меня. Хотя, может, оно и стало менее читаемым и менее удобным для поддержки.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "переход на летнее/зимнее время"  +/
Сообщение от Serg11 (??) on 18-Ноя-08, 13:48 
осенью знать будет так:
cal -m 10 2008 | perl -ne '/^\d*(\s\d*){6}\n$/;$&=~/\d\d\n/;print $&' | tail -1
а весной
cal -m 3 2008 | perl -ne '/^\d*(\s\d*){6}\n$/;$&=~/\d\d\n/;print $&' | tail -1

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

11. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от phpcoder email(??) on 19-Ноя-08, 19:14 
'==' это башизм. Не рекомендую.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

12. "переход на летнее/зимнее время"  +/
Сообщение от pavlinux (ok) on 21-Ноя-08, 00:13 
Это не интересно, функцию давай!!!
Уравнения Гаусса для определения Пасхи знаете, вот что-то подобное...

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

13. "переход на летнее/зимнее время"  +/
Сообщение от Serg11 (??) on 29-Ноя-08, 15:16 
Во, что я нашел ;-)
http://www.canto.ru/calendar/easter.php?year1=2000&year2=301...
http://megalib.com/books/27/html/algoritm/data/data1.htm
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

14. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от Aivanzipper email on 05-Июл-10, 14:57 
# uname -r
7.2-RELEASE

date -v1d -v`date -v +1m +%m`m -v-1d +%d

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

15. "Определение количества дней в месяце в bash скрипте"  +/
Сообщение от Aivanzipper email on 05-Июл-10, 15:15 
Только кавычки левые должны быть, какое-о автоформатирование сработало...
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру