Böylece bir dosyayı açarak cat
ve ardından grep
eşleşen satırları almak için kullanmak , yalnızca uğraştığım belirli günlük kümesinde çalıştığım zaman beni alır. Çizgileri bir kalıpla eşleştirmek için bir yol gerekir, ancak yalnızca çizginin bir kısmını maçtan sonra döndürmek için. Maçtan önceki ve sonraki bölüm sürekli değişecektir. sed
Veya ile oynadım awk
, ancak maçtan önce parçayı silmek için hattın nasıl filtrelendiğini veya sadece maçtan sonra parçayı geri döndürecek şekilde nasıl filtre edeceğimi çözemedim. Bu, filtrelemem gereken bir çizgi örneği:
2011-11-07T05:37:43-08:00 <0.4> isi-udb5-ash4-1(id1) /boot/kernel.amd64/kernel: [gmp_info.c:1758](pid 40370="kt: gmp-drive-updat")(tid=100872) new group: <15,1773>: { 1:0-25,27-34,37-38, 2:0-33,35-36, 3:0-35, 4:0-9,11-14,16-32,34-38, 5:0-35, 6:0-15,17-36, 7:0-16,18-36, 8:0-14,16-32,34-36, 9:0-10,12-36, 10-11:0-35, 12:0-5,7-30,32-35, 13-19:0-35, 20:0,2-35, down: 8:15, soft_failed: 1:27, 8:15, stalled: 12:6,31, 20:1 }
İhtiyacım olan kısım "durduktan" sonra her şey.
Bunun arkasındaki arka plan, bir şeyin ne kadar sıklıkla durduğunu bulabilmemdir:
cat messages | grep stalled | wc -l
Yapmam gereken, belirli bir düğümün kaç kez durduğunu bulmak ("durduktan" sonra her iki kolonun önündeki kısımla belirtilir). bana yardım etmeyen tezgah yok, sadece bırakılan kısmı filtrelemem gerekiyor, böylece o zaman durmuş olanlardan belirli bir düğümü bulabilirim.
Tüm amaç ve amaçlar için bu, standart GNU çekirdek araçlarına sahip bir freebsd sistemidir, ancak yardımcı olmak için fazladan bir şey yükleyemiyorum.
sed
çözümü ve özel olarak boşluk tedavi etmiyoruz.