Dosyaları, dosya içindeki bir zaman damgasına göre sıralama


3

Bir zaman damgası ile bir ascii başlık içeren bir sürü dosya var İÇİNDEKİ dosyayı, ardından büyük miktarda ikili veri izler. Bu zaman damgasına göre sıralanmış dosyaları komut satırında (bash, vb.) Listelemek istiyorum.

Dosya başlıkları aşağıdakine benzer:

encoding: raw
endian: big
dimension: 4
sizes: 128 128 1 4
date_time: 06.02.12.18:59
user_name: Operator1
dwell_time: 4.000

....binary data....

Biçimi kullanan "date_time" zaman damgasına göre sıralama yapmak istiyorum dd.mm.yy.hh: aa

sort --key seçenek umut verici görünüyor ama bütün denemelerim başarısız oldu. Herhangi bir yardım çok takdir edilmektedir. Teşekkürler.

Yanıtlar:


3
$ grep ^date_time *.dat | sort -t: -k3
t8b.dat:date_time: 06.02.11.17:55
t8a.dat:date_time: 06.02.12.18:59

veya sadece dosya isimlerini çıkarmak için

$ grep ^date_time *.dat | sort -t: -k3 | cut -d: -f1
t8b.dat
t8a.dat

Veri dosyaları nerede

$ head *dat
==> t8a.dat <==
a
b
c
date_time: 06.02.12.18:59
d
e
f

==> t8b.dat <==
p
q
r
date_time: 06.02.11.17:55
x
y
z

Kullanabilirsiniz grep 'ler -m 1 sonraki (ikili) verilerde aramayı durdurma seçeneği.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.