日付と時刻 | package入門(カレンダー・システム編) [講座] | 逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓rpnの実践ウェブ   
rpn hacks! アールピーエヌ・ハックスサイトマップ

rpn | 講座 | package入門 | ポテンシャルを飛躍的に高めるrpnパッケージを学習。

日付と時刻

 今日の日付や現在時刻を知りたいときがあります。特にバッチ処理のように自動実行するときに重宝します。日付を教えてくれるコマンドはDOSにもあるのですが、DOSのdateやtimeコマンドは日付入力のために一旦停止したり、プロンプトの文字が入っていたりして、バッチなどで使うには不向きです。

そこで、カレンダー・システムパッケージではdate、time、now、stampの4つを用意しました。以下に使い方を示しますが、DOSコマンドにあるような余分な文字は一切ありません。

警告rpnの日付、時刻プログラムを使うにはタイムゾーンの設定が必要です。詳しくはサポートの「タイムゾーンの設定」を参照してください。

rpn版の日付と時刻

 まずは日付を表示してみましょう。以下は、今日の日付を表示するdateプログラムを実行したところです(今日の日付になるので、実際に実行した日付表示と画面の例が異なることに注意)。

  >rpn -c date
  20010902


他のプログラムなどで利用しやすいように必ず8桁の日付になります。最初の4桁が西暦の年、次の2桁が月、最後の2桁が日付です。次は現時点での時刻を表示するtimeプログラムです。

  >rpn -c time
  070312


これは必ず6桁になります。最初の2桁が24時間表示の時間、次の2桁が分、最後の2桁が秒です。次はnowプログラムですが、これはdate、timeを繋げて表示する形式です。

  >rpn -c now
  20010902070427


nowプログラムの表示が分かりにくい場合は、次のstampプログラムを使います。日付の区切りに"."を時間の区切りに":"を使用しています。

  >rpn -c stamp
  2001.09.02 07:04:31


stampプログラムは人が見やすいように提供していますが、rpnで再利用するには"."や":"は邪魔になるので、バッチ処理などの自動実行ではdate、time、nowプログラムを使うことが多くなるでしょう。

情報本講座で使用したプログラムは、カレンダー・システムパッケージとして購入することができます。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。

カレンダー・システムパッケージ

カレンダー

ユーティリティー

マイスター

警告文字で作られた図表や式が崩れることがあります。ブラウザによっては固定幅フォントをMSゴシックにするときれいに表示されます。それでも崩れる場合は図表や式をメモ帳にコピー後、閲覧下さい。

警告rpn標準版(2kリビジョン)はダブルクォートで囲ってください。

rpn 1 2 + ⇒ rpn "1 2 +"
rpn 1 -c foo ⇒ rpn "1" -c "foo"

ダブルクォートは省略できることが多いのですが、慣れない間は囲んだほうが無難です。なお、本ウェブサイトの記事ではrpn標準版(98リビジョン)を使用しているため囲っていません。詳しくは技術サポートの「rpn TIPS」を参照ください。

注意rpnの障害情報と対策はこちら