[]

linuxda grep komutu

Merhaba arkadaşlar

bir stream var diyelim microsoft.com ve ben buna ffmpeg -i yaptığımda codeclerini filan ekrana basıyorum. Şimdi öyle bir grep lazım ki o ekrana basılan bilgiler içinde aac var mı yok mu bana gösterecek. Şu komut işe yaramıyor malesef

ffmpeg -i microsoft.com | grep "aac"

ne önerirsiniz?

 
ffmpeg çıktısı text ise yazdığınız grep çalışır. Çıktıda binary içerik varsa grep -a ile deneyin.


  • Abdurrahman  (14.06.16 13:08:17) 
text çıktı ama adresten sonra şu hatayı veriyor: Invalid data found when processing input


  • beholderrulez  (14.06.16 13:17:35) 
O hata ffmpeg'in hatasıdır, grep komutunun değil. Burada grep kendisinden önce gelen text üzerinde arama yapar. Doğal olarak sizin komutunuzda grep o verdiği çıktı mesajı içerisinde arama yapıyor.


  • Abdurrahman  (14.06.16 13:41:29 ~ 13:43:21) 
komutu biraz değiştirdim:

find microsoft.com | xargs -r -L 1 ffmpeg -i | grep -F "aac"
find: `microsoft.com: No such file or directory

yani linki bir şekilde find formatına uyarlayabilirsem olacak gibi. Ne dersiniz?
  • beholderrulez  (14.06.16 13:55:02) 
Ben ffmpeg'in ne yaptığını bilmiyorum. Yani ffmpeg -i link komutuyla nasıl bir çıktı alıyorsunuz, önce bunu görmek lazım. Sonra içerisinden gerekli aramayı yaparsınız. Find komutu ise farklı bir komut, sizin aradığınızla pek ilgisi yok.


  • Abdurrahman  (14.06.16 13:59:41) 
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 106 kb/s

şöyle bir çıktısı var. Bunu kontrol etmem lazım Audio:aac kısmı geliyorsa sorun yok. Ses kaybolduğunda bu aac de kayboluyor. Onu kontrol etmem lazım periyodik zamanlarda
  • beholderrulez  (14.06.16 14:32:18) 
Sizin verdiğiniz komut bu çıktıyı vermiyor işte. Neden vermiyor bunu çözelim önce, sonra bunun içerisinde aac olup olmadığını arayalım. Eğer bu çıktıyı veriyorsa sizin ilk mesajınızda verdiğiniz komut zaten çalışırdı.

Bu komut direkt olarak bu çıktıyı verip işlemi bitiriyor mu, yoksa sürekli olarak çalışır vaziyette güncelleniyor mu? Eğer son söylediğim gibiyse grep komutuna devam etmesi için ilk aşamayı geçmesi yani komutun tamamlanması gerekir.
  • Abdurrahman  (14.06.16 14:42:49 ~ 14:44:59) 
bu çıktıyı ffmpeg -i link deyince alabiliyorum


  • beholderrulez  (14.06.16 14:47:51) 
root@ca:~# cat test
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 106 kb/s

root@ca:~# cat test | grep aac
Stream #0:1[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 106 kb/s

Yani çıktı bu olduğu zaman grep işinizi görür.

Ffmpeg komutunu şu şekilde düzeltip deneyin bir de:

ffmpeg -i link 2>&1 | grep aac
  • Abdurrahman  (14.06.16 15:25:27) 
evet çok teşekkür ederim. Sizin verdiğiniz komut aacli satırı çıkartıyor. Süper oldu bu. Tekrar teşekkürler


  • beholderrulez  (14.06.16 19:36:34) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.