2013-04-04 19 views
7

İşim, çok büyük dosyalardan çok fazla sıralama alanı içeriyor. Bunu genelde bash'ta sort komutu ile yapıyorum. Ne yazık ki, bir çeşit başladığımda, ne kadar süreceği konusunda emin değilim. Sonuçların görünmesi için bir saniye beklemeli miyim, yoksa çalışırken başka bir şey üzerinde çalışmaya mı başlamalıyım?Bir sıralamadaki ilerlemeyi linux olarak görüntülemek mümkün mü?

Bir türün ne kadar ilerlediğine veya ne kadar hızlı çalıştığına dair bir fikir edinmenin herhangi bir yolu var mı?

$ cut -d , -f 3 VERY_BIG_FILE | sort -du > output 
+2

'Flat out' çalışıyor. Ne kadar ilerlediğini ve ne kadar uzun sürdüğünü belirlemek için güvenilir bir yol yoktur. Bu tür/proc için sıralama yapabilir ve bazı kesintiler yapabilirsiniz, ancak muhtemelen değil. –

+0

Belki alternatif bir sıralama rutini? Çoğu sıralama rutinlerini (QuickSort gibi) en azından sıralamada ne kadar ilerlediğine dair bir fikre sahip. –

cevap

8

Hayır, GNU sort raporlama ilerleme yapmaz.

Ancak, sadece çiftleri kaldırmak ve aslında sipariş umurumda değil sort kullanıyorsanız, o zaman böyle şeyler yapma more scalable way var:

awk '! a[$0]++' 

Bu ilk geçtiği dışarı yazıyor görüldüğü anda çizgi, size ilerleme hakkında bir fikir verebilir.

-4

Sen istemi alacak arka daki "tür" yürütebileceği ve diğer işleri

yapabilirsiniz

$ sıralama ...... & # (& arka planda çalışmasına demektir)

+3

İfadeniz şüphesiz doğruysa, cevabınızın sorunuzla ilgisi yoktur. – tink

1

You pv'u denemek isteyebilir, bu, piponuzda iş akışı açısından nelerin olup bittiğine dair güzel bir fikir vermelidir.

Örnek (denenmemiş) öncesi ve sort komutundan sonra pv enjekte throughput hakkında bir fikir edinmek için:

$ cut -d , -f 3 VERY_BIG_FILE | pv -cN cut | sort -du | pv -cN sort > output 

EDIT: Ben ilk bu yüzden çizgileri hesaplanırken, sizin sıralama komutu -u cevapsız Bir yüzde çıktı elde edebilmek geçersizdir. Bu kısmı cevabımdan çıkardı.

+0

'pv' harika bir araç olsa da, toplam uzunluğunu anlatmak için bunu bir seçenek olarak verirseniz gerçekten ne kadar uzak olduğumuza dair bir fikir verir. – glglgl

+0

@glglgl Örneğim düzenlemeden önce '-s 'kullanıyordu, ancak sıralamadan sonraki boyutu bildiğimiz gibi -u kaldırdım. OP, en azından, "pv" nin bir şekilde yaptığı "ne kadar hızlı çalıştığını" _ belirlemeye yardımcı olan bir çözüm istedi. –

İlgili konular