Bu büyük arşivde .jpg, .gif, .png vb. Gibi birçok grafik resim türü vardır. Tüm türleri bilmiyorum. Nokta uzantısı adlarından bağımsız olarak tüm grafik görüntüleri listeleyebilmek için 'bulmak' bir yolu var mı? Teşekkürler!Linux bul: Bul ile tüm grafik imaj dosyalarını listeleyebilir misiniz?
cevap
Bu kandırmasına
find . -name '*' -exec file {} \; | grep -o -P '^.+: \w+ image'
örnek çıkışını yapmalıdır:
./navigation/doc/Sphärische_Trigonometrie-Dateien/bfc9bd9372f650fd158992cf5948debe.png: PNG image
./navigation/doc/Sphärische_Trigonometrie-Dateien/6564ce3c5b95ded313b84fa918b32776.png: PNG image
./navigation/doc/subr_1.jpe: JPEG image
./navigation/doc/Astroanalytisch-Dateien/Gamma.gif: GIF image
./navigation/doc/Astroanalytisch-Dateien/deltaS.jpg: JPEG image
./navigation/doc/Astroanalytisch-Dateien/GammaBau.jpg: JPEG image
Video için alınabilecek benzer bir yaklaşım var mı? Görünüşe göre "görüntü" ile "video" değiştirilirse, Quicktime ve Matroska formatları atlanır ... –
@ElderGeek Bazı örnekler üzerinde dosya çalıştırabilir ve grep olabileceğim bir metin parçası olup olmadığına bakardım. Awk çözümünün görüntü bölümünde, örneğin/video | image | foo için örneklemi ayırabiliyordunuz./Video dosyasındaki video, resim veya foo kelimelerini içeren tüm dosyaları dosyadan döndürdüler. – f3xy
GIF görüntüsünden nasıl kurtulabileceğime dair herhangi bir fikir veya: JPEG resmi ve sadece dosyanın adı ve yolu ile bırakılabilir, böylece çıktı olarak başka bir komuta iletebilirim? – VaTo
find . -type f -exec file {} \; | grep -o -P '^.+: \w+ image'
daha iyi olmalıdır.
neden bu daha iyidir ? – Selah
Aşağıdakiler bana daha iyi uyuyor çünkü benim durumumda bu dosya listesini başka bir programa aktarmak istedim.
find . -type f -exec file {} \; | awk -F: '{if ($2 ~/image/) print $1}'
Çıktıyı pipetlemek istiyorsanız bu gerçekten varsayılan cevaptır. Teşekkürler! –
Sadece "image" için awk kullanmak veya kullanmak awk yapmayacaktır. PSD dosyaları, "I" ile bir sermaye "I" ile tanımlanacaktır, dolayısıyla regexp'i büyük/küçük harfe duyarsız hale getirmemiz veya I. sermayeyi de içermemiz gerekir. EPS dosyaları, "görüntü" kelimesini içermeyecektir. Ne istediğinize bağlı olarak "EPS" veya "Postscript" için de eşleştirmeniz gerekir. Yani burada benim geliştirilmiş bir versiyonu: Aynı soruna İlgili
find . -type f -exec file {} \; | awk -F: '{ if ($2 ~/[Ii]mage|EPS/) print $1}'
, sadece photofind (https://github.com/trimap/photofind) adında bir araç yayınladı. Normal bul-komutu gibi davranır, ancak görüntü dosyaları için özeldir ve görüntü dosyalarında saklanan EXIF-bilgisine dayanarak sonuçların filtrelenmesini destekler. Daha fazla bilgi için bağlantılı github-repo'ya bakın.
Bir çözüme bağlantıya açığız, ancak cevabın onsuz yararlı olduğundan emin olun: [bağlantı etrafında bağlam ekle] (http://meta.stackexchange.com/a/8259) böylece diğer kullanıcılarınız ne hakkında biraz fikir sahibi olurlar? o ve neden var, o zaman hedef sayfanın mevcut olmaması durumunda linking ettiğiniz sayfanın en alakalı bölümünü alıntı. [Bir linkten biraz daha fazla olan cevaplar silinebilir] (http://stackoverflow.com/help/deleted-answers). – mrun
Bu bağlantı soruyu yanıtlayabilirken, cevabın temel kısımlarını buraya dahil etmek ve referans için bağlantı sağlamak daha iyidir. Bağlantılı sayfa değiştiğinde yalnızca bağlantı yanıtları geçersiz olabilir. - [Review/Review/low-quality-posts/17292640] –
Bu yardımcı program, bir dosya uzantısında biten dosyanın ismine dayanıyor gibi görünüyor. Bu, dosya komutunun çıktısını kontrol etmek kadar güçlü olan bir yer değil.Sağladığınız bağlantıdan, bulunduğunuz yeri bulmak için bir örnek var ('find ~/Pictures \ (-iname" * .jpg "-or -iname" * .jpeg "-or -iname" * .png "-or -iname "* .tif" -ve -iname "* .bmp" -or -iname "* .gif" -or -iname "*. xpm" -ve -iname "* .nef" -or -iname "* .cr2" -ve -iname "* .arw" \) -size + 20k') – f3xy
- 1. Tüm .php dosyalarını yinelenen klasörde bul
- 2. gerritimdeki tüm değişiklikleri bul
- 3. bul ve bul EndekslenmişDB'de
- 4. bul
- 5. jQuery: Tüm gerekli alanları bul
- 6. Dizideki sözcüğün tüm oluşumlarını bul
- 7. Şu anki kullanıcı adını bul Julia (Linux)
- 8. Python'da "Yalnızca Tüm Kelimeyi Bul" var mı?
- 9. XCode Tüm proje dosyalarında bul ve değiştir
- 10. Bir projedeki dll tüm referanslarını bul
- 11. ActiveRecord, ilişkili çocukları olan tüm ebeveynleri bul
- 12. pydev: bir fonksiyona ilişkin tüm referansları bul
- 13. Selenyum - Bir web sayfasının tüm öğelerini bul
- 14. Ters grep, eşleşmeyen tüm eşleşmeleri bul
- 15. Tüm mevcut UTI'leri bul (Uniform Type Identifier)
- 16. Tüm bul ve kaldır mongo/mongoid
- 17. regex kullanmadan önce tüm metni bul
- 18. Dize ara - Tüm oluşumları bul PHP
- 19. iki koşulun doğru olduğu tüm kayıtları bul
- 20. BeautifulSoup kullanarak html içindeki tüm tabloları bul.
- 21. Android'deki ThreadID kullanıcısına ait tüm mesajları bul
- 22. max değerlerinin tüm indekslerini bul matlab
- 23. Tüm Satır Segmentlerinin Kesişim Noktalarını Bul
- 24. İki dizge arasındaki tüm alt dizeleri bul
- 25. Lua'da bir nesneye ait tüm referansları bul
- 26. Değere göre anahtar bul
- 27. VIM tüm olayları bul ve gir ile değiştir
- 28. Varlık Çerçevesi ile SQL tablosundaki tüm yinelenen kayıtları bul
- 29. Dicts ile aynı değere sahip tüm Anahtar Unsurları Bul
- 30. SQL'de çiftleri bul
Korkarım ki tüm uzantıları bulmayı deneyen bir bash betiği yazmanız gerekecek. –
Bir şekilde, dosyanın türünü bilen 'dosya' komutuyla birleştirilebilir mi? – Edward