アクセラと+αな生活
アクセラとα350と共に過ごす気まぐれ日記です。
Firefox ブラウザ無料ダウンロード
2017年09月
≪08月  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    10月≫
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
VineLinux TIPS集(日付の取得)
数年前、お仕事でHP-UX (HP制のUnix) に関わったことがあります。

とあるソフトの稼働状況をログ出力するシェルを作っていました。
で、そのェル内で前日の日付を取得する必要があったんです。

うるう年なんかを考慮した日付計算のスクリプトを作成しないと、昨日の日付が取得できないみたい。。。
とはいえ、そんなスクリプトを作るのは面倒だし。。。
しかも、サーバ間で時間同期しているサーバだったので、日付を変更してうるう年にちゃんと日付計算をしてくれるかの動作検証はもっと面倒。。。

さて、どうしたものか。。。とさんざんに悩ましてくれました。。。


悩ませるのはLinux なんかの GNU date の場合は「date -d '1 days ago'」で簡単に前日日付が取得できるのですけど、HP-UX では無理だったり。。。
(一般的な Linux で動いている date はGNU Shellutilsのもので、HP-UX の date とは別物だったりする)











結局はタイムゾーンを変えちゃえばいけそう。。。
ってことで解決したんですけどね。

「日付を保持する変数=`TZ=JST+15 date`」みたいな感じで対応したはずww

「`」(バッククオート)でくくってある内部なので、「TZ」を変更しても影響は「`」内しか反映されません。
しかもシェル内で使用しているので、反映はシェル内だけにとどまります。

なので、OS のタイムゾーンに影響がでることはありません。
なんて対応をしましたww


GNU date が使用できる Linux の場合は「date -d '1 days ago'」、GNU date が使用できない場合は「`TZ=JST+15 date`」というふうに対応しましょうww

コメント
この記事へのコメント
URL :
コメント :
パスワード :
管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
Template designed by アクセラと+αな生活

Powered by .
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。