File:  [Local Repository] / gnujdoc / fileutils-4.1 / getdate-ja.texi
Revision 1.1: download - view: text, annotated - select for diffs
Wed Jun 6 13:54:59 2001 UTC (19 years, 4 months ago) by futoshi
Branches: MAIN
CVS tags: HEAD
Add fileutils-4.1

    1: @node Date input formats
    2: @chapter 日付入力の書式
    3: 
    4: @cindex date input formats
    5: @findex getdate
    6: 
    7: 最初の引用:
    8: 
    9: @quotation
   10: 我々の時間を計る単位は,秒から月まであり,かなり複雑で,非対称で,連結で
   11: きないので,徹頭徹尾,頭の計算で間に合わせることは,ほとんど不可能です.
   12: 本当に,非道な神が我々を時間の奴隷にし,ぼんやりした繰り返し仕事と不快な
   13: 驚きへの従属から,我々が逃げることをほとんど不可能にしようと企てたので,
   14: 彼は我々の現在のシステムを伝える以上のことを行うことができませんでした.
   15: それは,台形の建築用ブロックの集合に似ていて,垂直や水平の表面が無く,最
   16: も単純な考えで,建造物を飾り立てることを要求された言語に似ていて,役に立
   17: たない微粒子と長い遠回しな表現です.我々がはっきりとした,または,少なく
   18: とも頭打ちな経験に直面することを可能にした,より成功した言語と科学ののパ
   19: ターンと異なり,我々の時間を計るシステムは,静かにそして繰り返し,時間の
   20: 恐怖を呼び起こします.
   21: 
   22: @dots{} それは,建築家がフィートで長さを,メートルで幅を,そしてellで高
   23: さを計る必要があるかのようなものです.基本的な指示用のマニュアルで,五つ
   24: の異なる言語の知識を必要とするかのようなものです.我々が,どうにもならな
   25: い混乱した気分で,この間の火曜日や日曜日からの一週間といった,短い過去あ
   26: るいは近い将来を調査することがよくあるのは,不思議ではありません. 
   27: @dots{} @footnote{この引用の訳は,訳者本人が理解できていません.}
   28: 
   29: --- Robert Grudin, @cite{Time and the Art of Living}.
   30: @end quotation
   31: 
   32: このセクションでは,@sc{gnu}プログラムが受け入れる,文章上での日付の表現
   33: を記述します.これらは,様々なプログラムの引数としてユーザが供給可能な文
   34: 字列です.(@code{getdate}関数による)Cのインターフェースはここでは述べま
   35: せん.
   36: 
   37: @cindex beginning of time, for @sc{posix}
   38: @cindex epoch, for @sc{posix}
   39: ここでの日付の構文は,0年から表現することは可能ですが,コンピュータの整
   40: 数は,そのような長い範囲を表現することができないことがよくあります.
   41: @sc{posix}システム上では,時刻は1970-01-01 00:00:00 @sc{utc}から始まりま
   42: す.@sc{posix}は,@sc{posix} エポック時間より前と,遠い将来の時間のサポー
   43: トを要求しません.伝統的なUnixシステムは,32ビットの符号付き
   44: @code{time_t}があり,1901-12-13 20:45:52から2038-01-19 03:14:07 @sc{utc} 
   45: まで表現可能です.64ビットの符号付き@code{time_t}を用いたシステムでは,
   46: 知られている宇宙の一生の全ての時間を表現可能です.
   47: 
   48: @menu
   49: * General date syntax::            Common rules.
   50: * Calendar date items::            19 Dec 1994.
   51: * Time of day items::              9:20pm.
   52: * Time zone items::                @sc{est}, @sc{pdt}, @sc{gmt}, ...
   53: * Day of week items::              Monday and others.
   54: * Relative items in date strings:: next tuesday, 2 years ago.
   55: * Pure numbers in date strings::   19931219, 1440.
   56: * Authors of getdate::             Bellovin, Eggert, Salz, Berets, et al.
   57: @end menu
   58: 
   59: 
   60: @node General date syntax
   61: @section 一般的な日付の構文
   62: 
   63: @cindex general date syntax
   64: 
   65: @cindex items in date strings
   66: @dfn{日付}は,空白で分けられた多くの項目を含む,空も可能な文字列です.曖
   67: 昧にならないとき,空白は省略できます.空の文字列は今日の始まり(すなわち
   68: 真夜中)を意味します.項目の順序は重要ではありません.日付の文字列は,項
   69: 目の多くの特色を含むことができます.
   70: 
   71: @itemize @bullet
   72: @item カレンダーの日付項目
   73: @item その日の時間の項目
   74: @item タイムゾーンの項目
   75: @item 曜日の項目
   76: @item 相対的な項目
   77: @item 純粋な数字
   78: @end itemize
   79: 
   80: @noindent
   81: 我々は,これらの項目形式のそれぞれを,以下で順番に記述します.
   82: 
   83: @cindex numbers, written-out
   84: @cindex ordinal numbers
   85: @findex first @r{in date strings}
   86: @findex next @r{in date strings}
   87: @findex last @r{in date strings}
   88: いくつかの数字は,ほとんどの文脈で単語で書き出すことができます.これは曜
   89: 日の項目や相対的な項目を指定するとき,最も役に立ちます(以下を参照してく
   90: ださい).ここにリストがあります.1に対する@samp{first},2に対する
   91: @samp{next},3に対する@samp{third},4に対する@samp{fourth},5に対する
   92: @samp{fifth},6に対する@samp{sixth},7に対する@samp{seventh},8に対する
   93: @samp{eighth},9に対する@samp{ninth},10に対する@samp{tenth},11に対する
   94: @samp{eleventh},そして12に対する@samp{twelfth}です.また@samp{last}は,
   95: 正確に@math{-1}を意味します.
   96: 
   97: @cindex months, written-out
   98: 月をこの方法で書くとき,``完全な綴り''の代わりに,それは数字で書かれてい
   99: ると考えられます.これは文字に変更することもできます.
  100: 
  101: @cindex language, in dates
  102: 現在の実装では,@samp{AM},@samp{DST},@samp{EST},@samp{first},
  103: @samp{January},@samp{Sunday},@samp{tomorrow},そして@samp{year}のよう
  104: な,単語と省略は英語のみサポートされています.
  105: 
  106: @cindex language, in dates
  107: @cindex time zone item
  108: @command{date}の出力は,言語の問題だけでなく,@samp{IST}のようなタイムゾー
  109: ン項目に対する標準的な意味がないため,日付文字列として常に受け入れ可能で
  110: はありません.後でパースする目的で日付文字列を生成するために
  111: @command{date}を使用するとき,言語に独立して,@samp{UTC}と@samp{Z}以外の
  112: タイムゾーン項目を使用しない日付の書式を指定してください.こうするための
  113: 方法が,ここにいくつかあります.
  114: 
  115: @example
  116: $ LC_ALL=C TZ=UTC0 date
  117: Fri Dec 15 19:48:05 UTC 2000
  118: $ TZ=UTC0 date +"%Y-%m-%d %H:%M:%SZ"
  119: 2000-12-15 19:48:05Z
  120: $ date --iso-8601=seconds  # a GNU extension
  121: 2000-12-15T11:48:05-0800
  122: $ date --rfc-822  # a GNU extension
  123: Fri, 15 Dec 2000 11:48:05 -0800
  124: $ date +"%Y-%m-%d %H:%M:%S %z"  # %z is a GNU extension.
  125: 2000-12-15 11:48:05 -0800
  126: @end example
  127: 
  128: @cindex case, ignored in dates
  129: @cindex comments, in dates
  130: 英文字の大文字小文字は,日付では完全に無視されます.コメントは,適切に入
  131: れ子状になった丸カッコに含まれる限り,丸カッコの間で導入可能です.数字に
  132: 続かないハイフンは,現在無視されます.数字の前に前置されるゼロは無視され
  133: ます.
  134: 
  135: 
  136: @node Calendar date items
  137: @section カレンダーの日付の項目
  138: 
  139: @cindex calendar date item
  140: 
  141: @dfn{カレンダーの日付の項目}は年の日付を指定します.それは,月が数字で指
  142: 定されるか,文字で指定されるかによって異なりますこれら全ての文字列は,同
  143: じカレンダーの日付を指定します.
  144: 
  145: @example
  146: 1972-09-24     # @sc{iso} 8601.
  147: 72-9-24        # 69から99では19xx
  148:                # 68から00では20xxと仮定します.
  149: 72-09-24       # 前置されるゼロは無視されます.
  150: 9/24/72        # U.S.の一般的な表記です.
  151: 24 September 1972
  152: 24 Sept 72     # Septemberの省略指定です.
  153: 24 Sep 72      # 三文字の省略は常に利用可能です.
  154: Sep 24, 1972
  155: 24-sep-72
  156: 24sep72
  157: @end example
  158: 
  159: 年も省略できます.この場合,最後に指定された年,または,無ければ現在の年
  160: が利用されます.例えば,以下のようになります.
  161: 
  162: @example
  163: 9/24
  164: sep 24
  165: @end example
  166: 
  167: ここに規則があります.
  168: 
  169: @cindex @sc{iso} 8601 date format
  170: @cindex date format, @sc{iso} 8601
  171: 数字の月に対し,@sc{iso} 8601書式@samp{@var{year}-@var{month}-@var{day}} 
  172: が可能で,@var{year}は正の数,@var{month}は01と12の間の数,そして
  173: @var{day}は01と31の間の数です.数字が10未満の場合,前置されるゼロが存在
  174: する必要があります.@var{year}が68以下の場合,2000が加えられます.それ以
  175: 外の場合で,@var{year}が100未満の場合,1900が加えられます.合州国でよく
  176: 使用される@samp{@var{month}/@var{day}/@var{year}}の構成も受け入れられま
  177: す.同様に,年を削除すると@samp{@var{month}/@var{day}}です.
  178: 
  179: @cindex month names in date strings
  180: @cindex abbreviations for months
  181: 文字の月は完全に綴ることもできます.@samp{January},@samp{February},
  182: @samp{March},@samp{April},@samp{May},@samp{June},@samp{July},
  183: @samp{August},@samp{September},@samp{October},@samp{November},または,
  184: @samp{December}です.文字の月は最初の三文字で省略でき,省略のドットの後
  185: 置も可能です.@samp{September}の代わりに@samp{Sept}と書くことも許可され
  186: ています.
  187: 
  188: 月が文字で書かれるとき,カレンダーの日付は以下のようにして与えられます.
  189: 
  190: @example
  191: @var{day} @var{month} @var{year}
  192: @var{day} @var{month}
  193: @var{month} @var{day} @var{year}
  194: @var{day}-@var{month}-@var{year}
  195: @end example
  196: 
  197: または,年を省略します.
  198: 
  199: @example
  200: @var{month} @var{day}
  201: @end example
  202: 
  203: 
  204: @node Time of day items
  205: @section 日付の時間の項目
  206: 
  207: @cindex time of day item
  208: 
  209: 日付文字列での@dfn{日付の時間の項目}は,与えられた日付の時間を指定します.
  210: ここにいくつか例があり,全て同じ時間を表現しています.
  211: 
  212: @example
  213: 20:02:0
  214: 20:02
  215: 8:02pm
  216: 20:02-0500      # @sc{est} (合州国東部標準時)
  217: @end example
  218: 
  219: より一般的に,日付の時間は,@samp{@var{hour}:@var{minute}:@var{second}} 
  220: として与えることができ,@var{hour}は0と23の間の数字,@var{minute}は0と59 
  221: の間の数字,そして@var{second}は0と59の間の数字です.代わりに,
  222: @samp{:@var{second}}は省略でき,その場合,それは0です.
  223: 
  224: @findex am @r{in date strings}
  225: @findex pm @r{in date strings}
  226: @findex midnight @r{in date strings}
  227: @findex noon @r{in date strings}
  228: 時間に@samp{am}や@samp{pm}(または,@samp{a.m.}や@samp{p.m.})が続く場合,
  229: @var{hour}は1から12までの実行に限定され,@samp{:@var{minute}}は省略でき
  230: ます(ゼロとされます).@samp{am}は午前を示し,@samp{pm}は午後を示します.
  231: この注釈で,12は1の前になります.真夜中は@samp{12am}で,一方正午は
  232: @samp{12pm}です.(これは,@samp{12m}を正午,@samp{12pm}を真夜中として使
  233: 用する,ラテン語に由来する古い伝統の反対となる,@samp{12am}と@samp{12pm} 
  234: のゼロを起点にした解釈です.)
  235: 
  236: @cindex time zone correction
  237: @cindex minutes, time zone correction by
  238: 時刻は,代わりにタイムゾーン修正を続けることができ,それは
  239: @samp{@var{s}@var{hh}@var{mm}}として表現され,@var{s}は@samp{+}または
  240: @samp{-},@var{hh}は時間の数字,そして@var{mm}は地域の分の数字になります.
  241: タイムゾーン修正がこのように与えられるとき,それは,世界標準時(@sc{utc})
  242: に関連する時間として解釈され,タイムゾーンや地域的タイムゾーンに対する,
  243: あらゆる前置される指定に優先します.日付の時間の@var{minute}の部分は,タ
  244: イムゾーン修正が使用されるとき省略できません.これは,時間の分数部分でタ
  245: イムゾーン修正を指定する唯一の方法です.
  246: 
  247: @samp{am}/@samp{pm}やタイムゾーン修正は,どちらか一方のみ指定でき,両方
  248: はできません.
  249: 
  250: 
  251: @node Time zone items
  252: @section タイムゾーンの項目
  253: 
  254: @cindex time zone item
  255: 
  256: @dfn{タイムゾーンの項目}は,国際的なタイムゾーンを指定し,例えば世界標準
  257: 時に対する@samp{UTC}や@samp{Z}のような小さな文字集合で示されます.含まれ
  258: るピリオドは全て無視されます.別々の(すなわち,いくつかの空白で区切られ
  259: ている)単語内の文字列@samp{DST}が夏時間でないタイムゾーンに続くことで,
  260: 対応する夏時間のタイムゾーンが指定可能です.
  261: 
  262: @samp{UTC}と@samp{Z}以外のタイムゾーンの項目は時代遅れで,曖昧なので推奨
  263: されません.例えば,@samp{EST}はオーストラリアと合州国では異なる意味を持
  264: ちます.代わりに,前のセクションで記述されている,@samp{-0500}のような曖
  265: 昧でない数字のタイムゾーンコレクションを使用した方が良いでしょう.
  266: 
  267: 
  268: @node Day of week items
  269: @section 曜日の項目
  270: 
  271: @cindex day of week item
  272: 
  273: 曜日の明示的な記述は,将来,曜日に到達するよう,(必要なら)日付に前置され
  274: ます.
  275: 
  276: 曜日は,完全に綴ることができます.@samp{Sunday},@samp{Monday},
  277: @samp{Tuesday},@samp{Wednesday},@samp{Thursday},@samp{Friday},または,
  278: @samp{Saturday}です.曜日は,最初の三文字で省略でき,追加のピリオドを続
  279: けることができます.特別な省略として,@samp{Tuesday}に対する@samp{Tues},
  280: @samp{Wednesday}に対する@samp{Wednes},そして,@samp{Thursday}に対する
  281: @samp{Thur}や@samp{Thurs}も許可されます.
  282: 
  283: @findex next @var{day}
  284: @findex last @var{day}
  285: 前置された追加分の週を移動するため,数字を曜日項目に前置することができま
  286: す.それは,@samp{third monday}のような表現が最も良い使用法です.この文
  287: 脈では,@samp{last @var{day}}や@samp{next @var{day}}も受け入れられます.
  288: それらは@var{day}で表現されている日付の1週間前,または後になります.
  289: 
  290: 曜日に続くカンマは無視されます.
  291: 
  292: 
  293: @node Relative items in date strings
  294: @section 日付文字の相対的な項目
  295: 
  296: @cindex relative items in date strings
  297: @cindex displacement of dates
  298: 
  299: @samp{相対的な項目}は,日付(それが無い場合は現在の日付)を前後に調整しま
  300: す.相対的な項目の効果は蓄積されます.ここにいくつか例があります.
  301: 
  302: @example
  303: 1 year
  304: 1 year ago
  305: 3 years
  306: 2 days
  307: @end example
  308: 
  309: @findex year @r{in date strings}
  310: @findex month @r{in date strings}
  311: @findex fortnight @r{in date strings}
  312: @findex week @r{in date strings}
  313: @findex day @r{in date strings}
  314: @findex hour @r{in date strings}
  315: @findex minute @r{in date strings}
  316: 時間の置換の単位は,年や月全体を移動するため,文字列@samp{year}や
  317: @samp{month}が選択できます.年や月は全てが同じ期間ではないので,これらは
  318: 曖昧な単位です.より正確な単位は,14日と等価な@samp{fortnight},7日と等
  319: 価な@samp{week},24時間と等価な@samp{day},60分と等価な@samp{hour},60秒
  320: と等価な@samp{minute}や@samp{min},そして1秒と等価な@samp{second}や
  321: @samp{sec}です.これらの単位の@samp{s}接尾子は受け入れられ,無視されます.
  322: 
  323: @findex ago @r{in date strings}
  324: 時間の単位は乗数を前置でき,それは追加の符号付きの数字で与えられます.符
  325: 号無しの数字は,正の符号として扱われます.全く数字が無いものは,乗数とし
  326: て1が暗示されます.文字列@samp{ago}が続く相対的な項目は,値@math{-1}の乗
  327: 数が前置された単位と等価です.
  328: 
  329: @findex day @r{in date strings}
  330: @findex tomorrow @r{in date strings}
  331: @findex yesterday @r{in date strings}
  332: 文字列@samp{tomorrow}は,未来の1日と等価で(@samp{day}と等価),文字列
  333: @samp{yesterday}は,過去の1日と等価です(@samp{day ago}と等価).
  334: 
  335: @findex now @r{in date strings}
  336: @findex today @r{in date strings}
  337: @findex this @r{in date strings}
  338: 文字列@samp{now}や@samp{today}は,ゼロ値の時間を置換する相対的な項目で,
  339: これらの文字列は,ゼロ値の時間を置換することは,前の項目で変化されていな
  340: いときの現在時間を表現するという事実に由来します.それらは@samp{12:00
  341: today}のように,他の項目を強調するために使用できます.文字列@samp{this} 
  342: もゼロ値の時間を置換する意味を持ちますが,@samp{this thursday}のような日
  343: 付文字列で好まれます.
  344: 
  345: 相対的な項目が,調整された時刻を跨るために結果として日付が生成されるとき,
  346: 特に夏時間では,結果として生じる日付と時間は,それに応じて調整されます.
  347: 
  348: 
  349: @node Pure numbers in date strings
  350: @section 日付文字列の純粋な数字
  351: 
  352: @cindex pure numbers in date strings
  353: 
  354: 純粋な10進数の正確な解釈は,日付文字列の文脈に依存します.
  355: 
  356: 10進数が,形式@var{yyyy}@var{mm}@var{dd}で,他のカレンダーの日付項目
  357: (@pxref{Calendar date items})が,その日付項目の前に現われない場合,
  358: @var{yyyy}は年,@var{mm}は月の数字,そして@var{dd}は月の日付として,指定
  359: されたカレンダーの日付として読み込まれます.
  360: 
  361: 10進数が形式@var{hh}@var{mm}で,他の日付の時間の項目がその日付文字列の前
  362: に現われない場合,@var{hh}は日付の時間,そして@var{mm}は時間の分として,
  363: 指定された日付の時間として読み込まれます.@var{mm}は省略もできます.
  364: 
  365: カレンダーの日付と日付の時間が,両方とも日付文字列の数字の左に現われ,そ
  366: して相対的な項目が無い場合,数字は年に優先します.
  367: 
  368: 
  369: @node Authors of getdate
  370: @section @code{getdate}の著者
  371: 
  372: @cindex authors of @code{getdate}
  373: 
  374: @cindex Bellovin, Steven M.
  375: @cindex Salz, Rich
  376: @cindex Berets, Jim
  377: @cindex MacKenzie, David
  378: @cindex Meyering, Jim
  379: @cindex Eggert, Paul
  380: @code{getdate}は元々,Chapel HillのNorth Carolina大学にいるときに,
  381: Steven M. Bellovin (@email{smb@@research.att.com})によって実装されました.
  382: コードはその後Usenetの2人に捻りを加えられ,Rich $alz
  383: (@email{rsalz@@bbn.com})とJim Berets (@email{jberets@@bbn.com})が,1990 
  384: 年8月に完全に点検しました.@sc{gnu}システムに対する様々な修正は,David
  385: MacKenzie,Jim Meyering他によってなされました.
  386: 
  387: @cindex Pinard, F.
  388: @cindex Berry, K.
  389: この章は元々,Fran@,{c}ois Pinard (@email{pinard@@iro.umontreal.ca})が
  390: @file{getdate.y}ソースコードから生成し,K.@: Berry
  391: (@email{kb@@cs.umb.edu})が編集しました.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>