• ベストアンサー

psの結果のTIME(hh:mm:ss形式)を秒数表示に変換したい

psの結果のTIME(hh:mm:ss)を、perl関数等で秒数表示に変換する方法を教えて下さい。 perlじゃなくてawkやsedなんかでできるんならそれでも構いません。 別言語の関数を使わずともpsのオプションでTIMEを秒数で表示させる事ができるならそれでも構いません。 使うシェルはHP-UXのbshです。

質問者が選んだベストアンサー

  • ベストアンサー
noname#205944
noname#205944
回答No.1

実はあまり覚えていないのですが ps -ef での出力はLinux系とは違ったのですね カラム順が同じだとして(空白区切りで12番目) while(<>) { @in = split; @time = split(":",$in[11]); $in[11] = $time[0]*3600+$time[1]*60+$time[2]; print join " ", @in; } これを適当な名前で保存(例ps.pl) ps -ef | perl ps.pl でpsの出力をこのPerlスクリプトに食わしてやるといががでしょ ワンライナーでもできるのですが、少し長くなりそうなので あらかじめつくって置くといいかも それとも もっとぜんぜんちがう話かな?