私はこのようにフォーマットされたファイルを持っています:
1 223614 225119.537745 Engine45
2 223614 225121.082392 Engine45
3 223614 225124.440309 Engine45
4 223614 225124.763890 Engine45
5 223621 225124.933927 Engine46
6 223614 225124.934205 Engine45
7 223614 225125.354857 Engine45
8 223614 225127.603434 Engine45
.
.
.
私はそれを取る awk/shell を作成しようとしています 1) 同じ行に等しい場合は列 2 と 4 を検証し、これが当てはまる場合は、2) 列 2 で 2 番目に見つかった値を最初に見つかった列 1 で減算します。次のようになります。
1) で見つかった最初の行:
1 223614 225119.537745 Engine45
1) で見つかった 2 行目:
2 223614 225121.082392 Engine45
出力はこれの答えでなければなりません:
225121.082392 - 225119.537745 = 1.544647
次の出力は次のようになります。
3行目は1)で検索:
3 223614 225124.440309 Engine45
4 行目 1) で検索:
4 223614 225124.763890 Engine45
出力: 225124.763890 - 225124.440309 = 0.323581
そして、提供されたファイル内のすべてのレコードを連続して使用します。
私は1)それを機能させることができたが、2)私にとって本当に難しくなっていると信じていますが、誰かがリードを与えることができれば、非常に役立つ可能性があります。 perl のような別のツールで完了します。
よろしく