В Windows имеется интеллектуальное программное обеспечение «Все», отслеживающее изменения в NTFS, которое позволяет ему искать файлы по именам мгновенно - в течение секунды или меньше.
Есть ли такая возможность для Ubuntu?
Ubuntu также имеет старый добрый locate
из командной строки.
locate читает одну или несколько баз данных, подготовленных updatedb (8), и записывает имена файлов, соответствующие по крайней мере одному из PATTERN, в стандартный вывод, по одному на строку.
blockquote>updatedb создает или обновляет базу данных, используемую locate (1). Если база данных уже существует, ее данные используются повторно, чтобы избежать перечитывания каталогов, которые не изменились. updatedb обычно запускается ежедневно cron (8) для обновления базы данных по умолчанию.
blockquote>Пример ...
locate *.txt
приводит к
/boot/grub/gfxblacklist.txt /discworld/.Trash-1000/files/Breaking Bad S04E10 Nl subs DutchReleaseTeam/DutchReleaseTeam NFO.txt /discworld/.Trash-1000/files/Breaking Bad S04E10 Nl subs DutchReleaseTeam/Torrent downloaded from Demonoid.me.txt /discworld/.Trash-1000/files/True Blood S04E12 HDTV.XviD (NL subs) DutchReleaseTeam/Dutch Release Team NFO Read Before Playing.txt /discworld/.Trash-1000/files/True Blood S04E12 HDTV.XviD (NL subs) DutchReleaseTeam/Torrent_downloaded_from_Demonoid.me.txt /etc/X11/rgb.txt
То, что он показывает, показывается мгновенно, и вы можете искать с помощью
regex
.
Да, у нас есть такие утилиты. Во-первых, Nautilus (файловый браузер) позволяет вам быстро искать файлы. Для файлов, которые вы использовали, вы можете нажать super + F, чтобы открыть линзу «Файлы и папки» и ввести имя файла. Существуют также файловые индексаторы, такие как Tracker (которые, вероятно, будут доступны через линзу «Файлы и папки»).
Нет, такого инструмента нет. Все поисковые инструменты, о которых я знаю, полагаются на свои собственные базы данных и не могут использовать индекс внутренней файловой системы и данные журнала, как, например, Все, что может .
Тем не менее, я думаю, что в нормальных условиях «Linux» инструментов более чем достаточно. locate
способен индексировать файлы в любой файловой системе (в отличие от всего ) и также очень быстр. Если вы хотите искать личные документы или запускать программы, то для этой задачи больше подойдет программное обеспечение запуска, например gnome-do
или kupfer
.
В командной строке я использую locate
, как описано Rinzwind (1+), если вам нужен графический интерфейс, мне нравится Google Desktop .
Я не могу помнить, где я украл его, но попробуйте этот сценарий:
#!/bin/bash
t=$(mktemp)
locate "$1" | awk '{ printf "%4d\t\"%s\"\n", NR, $0 }' > $t
[[ -s $t ]] || { echo "No results found"; exit; }
rows=$(wc -l "$t" | cut -d' ' -f1)
if [[ $rows == 1 ]]; then
file=$(sed 's/^.*\t"\(.*\)"$/\1/' $t)
xdg-open "$file" &
else
response=$(dialog --stdout --menu 'Choose a File:' 20 70 15 --file $t)
if [[ -n "$response" ]]; then
file=$(sed -n "/^\s*$response\t/{s/^.*\t\"\(.*\)\"$/\1/;p}" $t)
if [[ -n $file ]]; then
echo "You chose $file"
xdg-open "$file" &
fi
fi
fi
Скопируйте и вставьте этот сценарий в текстовом файле...
После того, как сделанный делают это исполняемым файлом (sudo chmod +x) и затем вставляют его в/usr/local/bin или ~ / мусорное ведро
теперь, если Ваше название сценария является поиском, Вы имеете к цифре
поиск nomefile
:)
Другой многообещающий инструмент:
Мне удалось установить версию Everything для Windows (1.3.4.686.x86), используя PlayOnLinux 4.2.6 в Ubuntu 15.10. Он отлично работает и будет индексировать как разделы Ubuntu, разделы NTFS на одном диске, так и добавленные диски NTFS. Он работает так же быстро и без усилий, как и в Windows 7.