日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
CTIME(3) FreeBSD ライブラリ関数マニュアル CTIME(3) 名称 asctime, asctime_r, ctime, ctime_r, difftime, gmtime, gmtime_r, localtime, localtime_r, mktime, timegm -- バイナリ日付と時刻の値を変換す る ライブラリ 標準 C ライブラリ (libc, -lc) 書式 #include <time.h> extern char *tzname[2]; char * ctime(const time_t *clock); double difftime(time_t time1, time_t time0); char * asctime(const struct tm *tm); struct tm * localtime(const time_t *clock); struct tm * gmtime(const time_t *clock); time_t mktime(struct tm *tm); time_t timegm(struct tm *tm); char * ctime_r(const time_t *clock, char *buf); struct tm * localtime_r(const time_t *clock, struct tm *result); struct tm * gmtime_r(const time_t *clock, struct tm *result); char * asctime_r(const struct tm *tm, char *buf); 解説 関数 ctime(), gmtime() と localtime() は、すべて、引数として基準時点 (UTC (協定世界時)、1970 年 1 月 1 日 00:00:00; time(3) を参照) 以来の秒単位の 時間を表す時間の値を取ります。 関数 localtime() は、clock によって指された時間の値を変換し、現在のタイム ゾーン (と、夏時間のようなあらゆる他の要素) のために調節した後の値のため の取り出された時間の情報を含んでいる (以下に記述されている) ``struct tm'' へのポインタを返します。タイムゾーンの調節は、TZ 環境変数 (tzset(3) を参 照) によって指定されるように行われます。関数 localtime() は、tzset(3) が プロセスによってまだ呼び出されていないなら、時間変換情報を初期化するため に tzset(3) を使用します。 tm 構造体に書き込まれた後に、localtime() は、tzname の tm_isdst 番目の要 素を localtime() の返り値とともに使用される、タイムゾーンの省略形である ASCII 文字列へのポインタに設定します。 関数 gmtime() は、同様に時間の値を変換しますが、いつでもゾーンの調節がな く、(以下に記述された) tm 構造体へのにポインタを返します。 ctime() 関数は、localtime() と同じ方法で現在のタイムゾーンのための時刻値 を調整し、次の形式の 26 文字の文字列へのポインタを返します: Thu Nov 24 18:22:48 1986\n\0 すべてのフィールドには、一定の幅があります。 ctime_r() 関数は、呼び出し側が、少なくとも 26 文字の長さでなければならな い、結果を格納するための出力バッファ buf を提供しなければならないことを除 いて、ctime() と同じ機能を提供します。localtime_r() と gmtime_r() 関数 は、呼び出し側が出力バッファ result を提供しなければならないことを除い て、それぞれ localtime() と gmtime() と同じ機能を提供します。 asctime() 関数は、*tm によって指される構造体 tm の分解された時間を上の例 で示された形式に変換します。 asctime_r() 関数は、呼び出し側が、少なくとも 26 文字でなければならない、 結果を格納するための出力バッファ buf を提供することを除いて、asctime() と 同じ機能を提供します。 関数 mktime() と timegm() は、tm によって指された構造体の分解された時間を time(3) 関数によって返される値 (すなわち、基準時点 UTC からの秒数) と同じ エンコーディングの時間値に変換します。mktime() 関数は、現在のタイムゾーン の設定にしたがって入力構造を解釈します (tzset(3) を参照)。timegm() 関数 は、Universal Coordinated Time (協定世界時) (UTC) を表す入力構造を解釈し ます。 構造体の tm_wday と tm_yday 構成要素のオリジナルの値は、無視され、他の構 成要素のオリジナルの値は、それらの通常の範囲に制限されず、必要に応じて正 規化されます。例えば、10 月 40 日は、11 月 9 日に変換され、-1 の tm_hour は、真夜中の 1 時間前を意味し、0 の tm_mday は、現在の月の前の日を意味 し、-2 の tm_mon は、tm_year の 1 月の 2 ヶ月前を意味します。(tm_isdst の ために正または 0 の値によって、mktime() は、夏時間 (例えば、Daylight Sav ing Time) が、それぞれ、実際に指定された時間であるか、そうでないかを最初 に推測します。tm_isdst のために負の値によって、mktime() 関数は、夏時間 が、実際に指定された時間であるかどうか推測することを試みます。tm_isdst と tm_gmtoff メンバは、timegm() によって強制的に 0 にされます。) 成功して完了すると、構造体の tm_wday と tm_yday 構成要素の値が適切は、適 切に設定され、他の構成要素は、指定されたカレンダの時間を表すように設定さ れますが、それらの値は、それらの通常の範囲に強制されます。tm_mday の最後 の値は、tm_mon と tm_year が決定されるまで設定されません。mktime() 関数 は、指定されたカレンダ時間を返します。カレンダ時間を表せることができない なら、-1 を返します。 difftime() 関数は、秒単位の (time1 - time0) 式の 2 つのカレンダ時間の間の 差分を返します。 tm 構造体の定義と同様に外部の宣言は、<time.h> インクルードファイルにあり ます。tm 構造体は、少なくとも次のフィールドを含んでいます: int tm_sec; /* 秒 (0 - 60) */ int tm_min; /* 分 (0 - 59) */ int tm_hour; /* 時 (0 - 23) */ int tm_mday; /* 月の日 (1 - 31) */ int tm_mon; /* 年の月 (0 - 11) */ int tm_year; /* 年 - 1900 */ int tm_wday; /* 曜日 (Sunday = 0) */ int tm_yday; /* 通日 (0 - 365) */ int tm_isdst; /* 夏時間が採用されているか? */ char *tm_zone; /* タイムゾーンの名前の省略形 */ long tm_gmtoff; /* 秒単位の UTC からのオフセット */ フィールド tm_isdst は、夏時間が有効であるなら、0 以外です。 フィールド tm_gmtoff は、グリニッジ子午線 (Prime Meridian) の東を示す正の 値の状態で、UTC から表される時間の (秒単位の) オフセットです。 関連項目 date(1), gettimeofday(2), getenv(3), time(3), tzset(3), tzfile(5) 規格 asctime(), ctime(), difftime(), gmtime(), localtime() と mktime() 関数 は、ISO/IEC 9899:1990 (``ISO C90'') に適合しています、そして選択された ローカルのタイムゾーンが閏秒のテーブルを含まないという条件で ISO/IEC 9945-1:1996 (``POSIX.1'') に適合しています (zic(8) を参照)。 asctime_r(), ctime_r(), gmtime_r() と localtime_r() 関数は、ISO/IEC 9945-1:1996 (``POSIX.1'') に適合する予定です (この場合もやはり、選択され たローカルのタイムゾーンが閏秒のテーブルを含まないという条件です)。 timegm() 関数は、いかなる標準によっても明記されていません。その関数は、上 に説明された標準関数を使用して完全にエミュレートできるわけではありませ ん。 歴史 このマニュアルページは、Arthur Olson によって Berkeley に寄贈された時間 パッケージに由来し、4.3BSD で登場しました。 バグ difftime(), mktime() と他の関数の _r() 変異型を除いて、これらの関数は、内 部の静的オブジェクトに、それらの結果を残し、そのオブジェクトへのポインタ を返します。これらの関数に続く呼び出しは、同じオブジェクトを修正します。 C 標準は、現在のローカルなタイムゾーン設定を修正するプログラムのためのメ カニズムを提供せず、POSIX-標準方法は、再入可能ではありません。(しかしなが ら、スレッドセーフの実装は、POSIX スレッド環境で提供されています。) 返される tm 構造体の tm_zone フィールドは、また、(tzset(3) と tzsetwall(3) への続く呼び出しと同様に) あらゆる続く呼び出しによって上書き される、静的な文字の配列を指します。 外部変数 tzname の使用は、推奨されません。tm 構造体の tm_zone エントリが 推奨されます。 FreeBSD 11.4 January 2, 1999 FreeBSD 11.4