#navi(../)

*出力情報に日時情報を付加する方法 [#m3079f31]
Perlを利用すれば出力された情報に対し簡単に日時を追加できます。~
例えばiostatやvmstatの出力には日時情報が付加されません。~
以下のPerlスクリプトを使えば簡単に付加することが可能です。~

本資料は下記URLを参考にし備忘録としてほとんど同様の内容を書かせていただいています。~
http://d.hatena.ne.jp/imaiworks/20080326/1206499871

#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* 関連資料 [#ace4e3e5]
-[[マシンの日時を設定・変更する・date, ntpdate>逆引きUNIXコマンド/マシンの日時を設定・変更する・date, ntpdate]]
-[[日時の表示フォーマット変更・dateコマンド>逆引きUNIXコマンド/日時の表示フォーマット変更・dateコマンド]]
-[[翌日の日付を取得・dateコマンド>逆引きUNIXコマンド/翌日の日付を取得・dateコマンド]]
-[[前日の日付を取得・dateコマンド>逆引きUNIXコマンド/前日の日付を取得・dateコマンド]]
-[[出力情報に日時情報を付加したい>逆引きUNIXコマンド/出力情報に日時情報を付加したい]]
-[[Nヶ月とN日前の日付を取得・dateコマンド>逆引きUNIXコマンド/Nヶ月とN日前の日付を取得・dateコマンド]]
-[[UNIX時間に変換・UNIX時間を取得する方法>逆引きUNIXコマンド/UNIX時間に変換・UNIX時間を取得する方法]]
-[[今日の日付が月末かどうかをdateコマンドで確認する方法>逆引きシェルスクリプト/今日の日付が月末かどうかをdateコマンドで確認する方法]]
-[[指定したタイムゾーンのローカルタイムを表示する方法・TZ>逆引きUNIXコマンド/指定したタイムゾーンのローカルタイムを表示する方法・TZ]]
-[[YYYYMMDDを取得する・date>逆引きUNIXコマンド/YYYYMMDDを取得する・date]]
-[[HH:MI:SSを取得する・date>逆引きUNIXコマンド/HH:MI:SSを取得する・date]]


* 日時を付加するPerlスクリプト [#ueff3dee]
下記スクリプトを保存して実行できるようにパーミッションを設定してください。

 #!/usr/bin/perl
 use strict;
 use warnings;
 while (defined(my $line = <>)) {
   my ($sec, $min, $hour,$day ,$month ,$year ,$week) = localtime();
   printf('%04d/%02d/%02d %02d:%02d:%02d %s', $year+1900, $month+1, $day, $hour, $min, $sec, $line);
 }
#ref(puttime.pl)

* 使用方法 [#cb3ec1f9]
以下、ホームディレクトリのbinディレクトリにputtime.plというファイル名で保存し実行した例を記します。~
下図は、本スクリプトによりvmstatコマンドの出力に日時情報を付加しています。~
 $ vmstat 2 5 | ~/bin/puttime.pl 
下図の上位部分はvmstatを発行し実行。下位部分は本スクリプトを利用してvmstatを実行。~
&color(red){赤字};の部分が日時が追記された結果となります。
#ref(puttime-01.png)

#br
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
#br

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS