Dosyalarda metin araması için yazılım


Yanıtlar:


19

Kutudan Ubuntu ile birlikte gelen çok hoş bir tane var.

  1. Göstergeyi açın ( Superanahtar veya Ubuntu düğmesi) ve bulana kadar yazmaya başlayınSearch for Files

    görüntü tanımını buraya girin

  2. Yukarıdakiler Unity içindir, Ubuntu'daki varsayılan Masaüstü Ortamı. Menü odaklı ortamlarda, Applications-> Accessories->Search for Files

    görüntü tanımını buraya girin

  3. Select more optionsBölümü genişletin ve Contains the text:giriş alanına aranacak metni girin .

    görüntü tanımını buraya girin

Özellikler:

  • % 100 GUI
  • Dosya adlarını veya içeriği arayabilirsiniz.
  • Alt klasörlerde görünüyor.

Senaryonuzu göz önüne alındığında (terminal komutları yok, arayüz kullanımı basit) Daha iyi bir seçenek olmadığını düşünüyorum.

PS: Contains the text:giriş alanında '.' karakter bir jokerdir. Ondan kaçmak için '[]' kullanmanız gerekir. Örneğin: Contains the text: [.]myFunction.myFunction işlevini aramak için yazın


evet, detay
katabildiğimi görmedim

1
evet, yapabilirsiniz ... sadece "daha fazla seçenek seç" seçeneğine tıklamanız yeterlidir ve sadece "Metin İçeriyor" ifadesini değil, aynı zamanda tonlarca diğer arama seçeneklerini de (tarih, kullanıcı, dosya boyutlandırıcı, hatta regex ifadeleri) alabilirsiniz. Bu küçük canavarı da uzun süredir özledim ... Keşke Nautilus'a (Windows Gezgini'nde F3 gibi) entegre olmasını diliyorum
MestreLion

bu daha önce önerdiğim gibi aynıgnome-search-tool
Mikl

@Octavian: Ekran görüntülerini paylaştığınız için teşekkür ederiz!
MestreLion

@Mikl: aynı sonuç, fark, nasıl çağırılacağı konusundaki yaklaşımda yatmaktadır: ilk çözümünüz komut satırı çağırma (veya ALT + F2) üzerine odaklandı ve sadece kısaca menüden de bulunabilirdi. Nerede ya da menüde programın ne olduğunu söylemedim . Sadece cevabımı gönderdikten sonra, menü yolunu ve adını sağlayacak şekilde sizinkini düzenlediniz. Yeni gelenler için Menü odaklı bir yaklaşım her zaman CLI çağrılmasından daha iyidir. ALT + F2, yalnızca menüde yazılımın uygun olmadığı durumlarda kullanılmalıdır.
MestreLion

11

kullanım

 grep -nr <your text> .

bulmak istediğiniz metni <metninizin> içine yerleştirin


alt klasörlerde görünüyor mu
Santosh Linkha

experimentx@workmateX:/var/www/testingzedn$ grep -nr application.inisonsuza dek alıyor ... yanlış
mıyım

noktaya ihtiyacım var. , -r ile klasöre bakacak
wizztjh

grep -nr uygulama.ini.
wizztjh

9

kullanabilirsiniz

find . -name '*.*' -exec grep -Hn 'text to find' '{}' \;

-name '*. *' veya '* .txt' (burada dosya maskesini kullanın)
'bulmak için metin' (bulmak istediğiniz metni yerleştirin)

find . -type f -exec grep -Hn 'text to find' '{}' \;

tüm dosyaları aramak istiyorsanız


Tüm dosyalar için, -name '*.*'dosyalar her zaman bir uzantıya sahip olmadığından kullanmayın . -type fBunun yerine kullanın (tüm dosyaları aramak için). Değiştir {}tarafından "{}"doğru arandığını yok içinde boşluk ile aksi dosya adları.
Lekensteyn

@Lekensteyn mesajımı değiştirdim. ancak {} witout tırnaklarını kullanırken adlarında boşluk olan dosyalarla bir test yaptım.
Mikl

sadece onu da test ettim ve haklısın, boşluk hiç sorun değil. Bazı kabuklarda, kabuk genişlemesini önlemek için tırnaklar hala gerekli olabilir. Kimden man find: "Bu yapıların her ikisinin de kabuk tarafından genişlemesinden korunmak için kaçılmaları (` \ 'ile) veya alıntı yapılması gerekebilir. "
Lekensteyn

9

GUI (Grafiksel) aracı:

gnome-search-tool

Ubuntu ana menüsünde bulabilirsiniz

Menu -> Accessories -> Search for Files

veya ALT + F2 kısayol tuşunu kullanarak çalıştırın


1
Sadece yeni Ubuntu sürümleri için bir güncelleme: Unity arayüzünde (Ubuntu 12 veya daha üstü), Dash Home (araç çubuğundaki ilk simge) üzerine tıklayın, "search" yazıp "Search Files" uygulamasını seçin.
josircg

9

Ben bir searchmonkey hayranıyım (GPL, ücretsiz, platformlar arası, kaynaklar üzerinde oldukça hafif ve çok hızlı).

görüntü tanımını buraya girin


İyi görünüyor. En iyi oyladığınız yanıt Ubuntu'daki faturama uyduğundan beri diğer platformlarda deneyecek.
Amol Gawai,

64 bit işletim sistemlerinde çalışmadığını sanıyordum (Windows 7 64 bit ile ilgili sorunla karşılaştım). Her yerde 64 bit işletim sistemi kullandığım için bu benim için bir fırsattır. Ancak umut verici görünüyordu.
Amol Gawai,

@AmolGawai burada ubuntu 64bit'te mükemmel çalışıyor ...
Kova Gücü

4

Regexxer dosyalarda metin aramanıza izin verecektir. "Klasörlerde" ile ne kastettiğinizden emin değilsiniz.

bağlantı tanımını buraya girin


3

Grafiksel arama:

Kubuntu’da Dolphin’i açın, ardından Edit-> Find (Ctrl + F)

dosya adından İçeriğe geçin ve aranacak yeri ayarlayın.


2

Recoll indeksleme yapar ve evrak ve e-posta ile tam metin araması yapabilirsiniz.


50.000 klasöre bakmak zordur: D eğer verileri indekslemiyorsanız, SSD diski satın alamıyorsanız, dosya aramaya vakit kaybetmeden önce herhangi bir indeksleme aracı kurun. İşi bir kere yap. Mevcut sorunun cevabı olmasa bile iyi bir bakış açısıdır.
m3nda

1

Buradaki önerilerin üçünü 64 bit 16.04 Kubuntu ile karşılaştırdım:

  1. Searchmonkey günümüzde 64 bit Ubuntu ile çalışıyor. Regexxer'a benzer. Hızlı göründü, ancak doğal olarak indeks tabanlı aramaya göre daha yavaştır.
  2. Dosyaları Ara ve Alt-F2, KDE Ubuntu sürümüyle çalışmaz.
  3. Benim tavsiyem Recoll ve bunun için bazı kurulum talimatları ekledik. Benim için varsayılan kurulum PDF'yi (bunu test et!), DOCX, TAR, ZIP vb.

    sudo add-apt-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
    sudo apt-get install recoll antiword
    recoll
    
  4. İlk satır muhtemelen gerekli değildir: ortak yükleme deposu ekler.

  5. Antiword isteğe bağlıdır. Daha eski .doc dosyalarını desteklemek için gereklidir.
  6. Aşağıdaki sembolik bağları ve gerekirse Recoll Tercihleri'ndeki kök dizini etkinleştirin.
  7. GUI'yi kullanarak Recoll endekslemesi için cron işi oluşturun veya her oturum açmaya başlamanızı sağlayın.
  8. Tercihlerinizde Recoll ayarını, eğer uygunsa İngilizce'den Tüm dillere çeviriniz.
  9. İndekslemeye başla, en azından benim için şaşırtıcı derecede hızlıydı ve tüm kaynakları kullanmıyordum, bu yüzden dizüstü bilgisayarı kullanmaya devam edebildim.
  10. Şimdiye dek Recoll'dan bir hata buldum: "PST" ile dosya adını ararsanız, büyük harfli olmasına rağmen bulamıyor. "pst" çalışır ve hem büyük hem de küçük harfleri bulur.
  11. Https://www.lesbonscomptes.com/recoll/features.html adresinden recoll hakkında daha fazla bilgi edinin.

Outlook PST dosyaları için destek eklemek istiyorsanız, aşağıdakileri de uygulamanız gerekir.

    sudo apt-get install readpst
    mkdir ~/PST
    find -L ~ -name "*.pst" -print | awk "{ printf \"%s%s %s%s%s %s\\n\", \"mkdir ~/PST/\", \$1, \"; readpst -o ~/PST/\", \$1, \" -D -j 4 -r -tea -u -w\", \$1 }" > /tmp/myPstFiles
    cat /tmp/myPstFiles
    chmod 755 /tmp/myPstFiles
    /tmp/myPstFiles
  1. Kök dizini find komutunda gerekirse ~'den /'ye değiştirin.
  2. Find komutumun içinde bir hata var: Artık çok uzun bir dizin yapısı oluşturuyor. Ancak geçici dosyayı manuel olarak değiştirmek benim için bunu düzeltmekten daha kolaydı. Ana hedef bunun birkaç PST dosyası için işe yaramasıydı ve bunu yaptı.
  3. Readpst ile ilgili daha fazla bilgi için bkz. Http://www.five-ten-sg.com/libpst/rn01re01.html ve https://blog.robseder.com/2015/08/29/working-with-a-pst-file -in-linux /

0

Ben gerçekten metin tabanlı kullanıcı arayüzü sağlamak için ncurses kütüphanesine dayanan bir araç tanıtmak istiyorum. NCGREP (ncurses'a göre grep) adı verilen araç, esas olarak belirli bir klasördeki arama metni içindir. Umarım istediğin budur. Aracın bu kaynağı github.com'da barındırılıyor, daha fazlasını https://github.com/ncgrep/ncgrep adresinde bulabilirsiniz.

görüntü tanımını buraya girin
Demo animasyonunu görmek için resime tıklayınız.

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.