cal

Z Linux Wiki
Skocz do: nawigacja, szukaj
$ cal
    listopad 2015   
po wt śr cz pi so ni
                   1 
 2  3  4  5  6  7  8 
 9 10 11 12 13 14 15 
16 17 18 19 20 21 22 
23 24 25 26 27 28 29 
30                   

cal (od ang. calendarkalendarz) – polecenie występujące w GNU/Linuksie. Służy do wypisywania na standardowe wyjście (którym zazwyczaj jest ekran terminala) kalendarza miesięcznego w formie ASCII artu.

Dokładne zachowanie tego polecenia zależy od liczby podanych parametrów, które nie są przełącznikami i są liczbami:

  • Niepodanie żadnych parametrów tego typu wypisze kalendarz prezentujący aktualny miesiąc z zaznaczonym dniem dzisiejszym.
  • Podanie jednego parametru skutkuje wyświetleniem pełnego kalendarza danego roku. Jeśli jest to obecny rok, zaznaczony zostanie dzisiejszy dzień.
  • Podanie dwóch takich parametrów spowoduje wypisanie kalendarza prezentującego odpowiedni miesiąc (pierwsza liczba) odpowiedniego roku (druga liczba). Jeśli będzie to obecny miesiąc, dzień obecny zostanie zaznaczony.
  • Podanie trzech parametrów wypisze to, co podanie dwóch parametrów, jedynie zaznaczony zostanie dzień miesiąca określony przez trzeci parametr.
  • Podanie większej liczby takowych argumentów wypisze tekst pomocy.

Przełączniki[edytuj]

Zachowanie narzędzia można w niewielkim stopniu zmienić używając poniższych przełączników:

  • -1 lub --one – nic nie zmienia, program wyświetla podany miesiąc (w przypadku podania dwóch, trzech lub braku parametrów);
  • -3 lub --three – oprócz właściwego miesiąca wyświetlany jest miesiąc go poprzedzający i miesiąc po nim następujący (nie zmienia zachowania wywołania z jednym parametrem);
  • -j lub --julian – polecenie używa kalendarza juliańskiego;
  • -s lub --sunday – tydzień zaczyna się od niedzieli;
  • -w lub --week – pokazuje numery tygodni;
  • -y lub --year – wyświetla kalendarz całoroczny bez względu na inne kwestie.

Ciekawostki[edytuj]

$ cal 9 1752
    wrzesień 1752   
po wt śr cz pi so ni
    1  2 14 15 16 17 
18 19 20 21 22 23 24 
25 26 27 28 29 30    
  • Jak widać po prawej stronie, wywołanie komendy cal 9 1752 spowoduje wypisanie niepełnego kalendarza września 1752 roku. Jest to spowodowane faktem, iż 3 września tego roku w Wielkiej Brytanii i jej koloniach został wprowadzony kalendarz gregoriański (w Polsce wprowadzony już w 1582 roku), co spowodowało przeskoczenie 10 dni.
    • Powyższy brak był (i ciągle jest) tematem wielu żartów i opowiadań w środowisku użytkowników systemów uniksowych.

Zobacz też[edytuj]