Komut satırı aramalarını önlemek için ASCII dosyalarının içinde bir dize araması yapmak için herhangi bir yardımcı program var mı?
Örneğin, dizindeki tüm dosyaların içinde "test" dizesi için bir komut satırı araması nasıl yapılır /var/x/
?
Komut satırı aramalarını önlemek için ASCII dosyalarının içinde bir dize araması yapmak için herhangi bir yardımcı program var mı?
Örneğin, dizindeki tüm dosyaların içinde "test" dizesi için bir komut satırı araması nasıl yapılır /var/x/
?
Yanıtlar:
Searchmonkey'i kullanabilirsiniz. Bu araç depolarda bulunur;
sudo apt-get install searchmonkey
Öte yandan, grep ile komut satırı arama gerçekten bunun için tasarlanmıştır ...
İşte searchmonkey'den bir ekran görüntüsü
İlk sorunuzun grep
komuta alternatif bir GUI hakkında olduğunu varsayıyorum . Size bu konuda yardımcı olamam, komut satırını her zaman çok etkili buluyorum.
Komut satırı gelince, deneyin
grep "test" /var/x/*
Özyinelemeli olarak aramak istiyorsanız (yalnızca içeride değil /var/x/
, aynı zamanda alt dizinlerinde de)
grep -R "test" /var/x/
Grep dosyasının ikili olduğunu düşünen dosyalara dokunmamak için aşağıdaki -I
seçeneği kullanın:
grep -I "test" /var/x/
Grep bir dosyanın ikili olduğunu düşünüyorsa (dosyanın ilk birkaç baytına bağlı olarak), dosyanın tamamını görüntülemek yerine eşleşmediğini varsayacaktır.
Binary file file.jpg matches
grep
kodun kodlanmasının makul bir yoludur. Ubuntu'nun grep
bu şekilde yazılmış olup olmadığını bilmiyorum ).
*
yolu veya grep son çizgiden sonra 14.04 herhangi işi yapmak için görünmüyor
Regexxer'i kullanabilirsiniz , normal ifadeler için harika bir GUI arama / değiştirme aracıdır.
tarafından indirebilirsiniz:
sudo apt-get install regexxer
Şimdiye kadar kullandığım en iyi GUI olan Recoll'ı deneyin. Recoll'u şu anda desteklenen tüm Ubuntu sürümlerine kurmak için terminali açın ve şunu yazın:
sudo apt install recoll
Önce dosyaları dizine eklemek biraz zamana ihtiyaç duyar (kara liste yolu veya uzantıları veya mime tanımlayabilirsiniz).
gnome-search-tool
ya search-monkey
. Xapian kullanır, böylece kelime belgelerini (hem .doc ve .docx), pdf dosyalarını, posta klasörlerini vb. İnceleyebilir ve indeksleyebilir.
sudo apt install recoll
) 'dan edinilebilir ve grep'in bile başarısız olduğu yerlerde işini yapar, örneğin pkzip sıkıştırması ile sıkıştırılmış .docx belgeleriyle.
recoll
Öncelikle bina endeksi gerektirdiğine dikkat edin .
Ne yazık ki grep, Word (.doc) dosyalarında arama yapmak için çok zayıf bir iş çıkarsa da, catdoc çıktısını grep içine yönlendirebilirsiniz. Programcı değilim ama bu küçük senaryo benim için iyi çalışıyor:
#!/bin/bash
export GREP_OPTIONS='--color=auto'
echo -e "\n
Welcome to scandocs. This will search .doc (NOT .docx) files in this directory for a given string. \n
Type in the text string you want to find... \n"
read response
find . -name "*.doc" |
while read i; do catdoc "$i" |
grep -iH --label="$i" "$response"; done
Tüm iyileştirmeler ve önerilerinizi bekliyoruz!
grep
ve .doc
soru ile ilgisi var.
grep
.
İşi yapmak için basit bir araç yayınladım. Çoğunlukla yazılım geliştirici için düşünüldüğünde, aynı pencerede birkaç dosya açma (benzersiz?) Özelliğine sahiptir. Sonuçları Ace editörü (önerilen!) Veya html textarea kullanarak tarayıcıda sunar. Java tabanlı bir araçtır, bu nedenle linux'da olduğu gibi pencerelerde de çalışır.
bunu kontrol et!
https://askubuntu.com/a/1141367/47073 başına
Kullanılabilir mate-search-tool
, ki gnome-search-tool
kaldırılmış olanla aynı şey . Searchmonkey ile ilgili sorunlar yaşadım, bazı sonuçlar eksikti ve yavaştı, tavsiye etmedim.
Yüklemek için mate-search-tool
:
sudo apt install mate-utils
mate-search-tool
Bir klasördeki dosyaların içindeki dizeleri aramak için menüden Sublime Text Find in Files
seçeneğini kullanabilirsiniz Find
.
sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer
Ayrıca takip edebilir bu yüklemenin diğer olası yollarını soru Sublime üzerinde Ubuntu .
Sublime Text içindeki bir klasördeki bir dizgenin tüm dosyalarında arama yapmak için, daha net cevaplar için bu soruyu takip edebilirsiniz .