同じプロセスの2つのファイルから日付を減算する

同じプロセスの2つのファイルから日付を減算する

私は50個のプロセスを起動し、1つのファイル「say start_time」にはプロセスが開始された時間を保存し、もう1つのファイル「say end_time」にはプロセスが完了した時間を保存します。ファイルは次のとおりです。

Start time - 
Start time for Process A : 15/09/26 21:02:13
Start time for Process B : 15/09/26 20:06:14
Start time for Process C : 15/09/26 13:20:52
Start time for Process D : 15/09/26 11:23:46

End time file 
End time for Process B : 15/09/26 21:13:38
End time for Process D : 15/09/26 12:31:29
End time for Process A : 15/09/26 22:06:11
End time for Process C : 15/09/26 12:17:10

では、各プロセスの実行時間を計算したいと思います。たとえば、プロセスA:10分プロセスB:5分など。

ベストアンサー1

私は同意するカス'上記の説明は、次のように将来の形式を再指定しないように正しいログファイルの日付を示しています。

awk '
/:/{
    d=$(NF-1)
    gsub("/","",d)
    "date +%s -d \""d" "$NF"\"" | getline m
    if(/Start/)
        D[$5]=-m
    else
        D[$5]+=m
END{
    for(i in D)
        print "Process", i, "time :", D[i], "sec"
}' file

プロセスの終了順序を保存するには、スクリプトの末尾を次のように変更します。

…       D[$5]=-m
    else
        print "Process", $5, "time :", D[$5] + m
}' file

おすすめ記事