web-dev-qa-db-fra.com

Recherchez des fichiers par nom instantanément

Sous Windows, il existe un logiciel intelligent "Tout" qui écoute les changements dans NTFS qui lui permet de rechercher des fichiers par noms instantanément - pendant une seconde ou moins.

Existe-t-il une telle capacité pour Ubuntu?

5
Pavel Vlasov

Ubuntu a également un bon vieux locate de la ligne de commande.

locate lit une ou plusieurs bases de données préparées par updatedb (8) et écrit des noms de fichiers correspondant à au moins un des MOTIFS dans la sortie standard, un par ligne.

updatedb

updatedb crée ou met à jour une base de données utilisée par Locate (1). Si la base de données existe déjà, ses données sont réutilisées pour éviter de relire les répertoires qui n'ont pas changé. updatedb est généralement exécuté quotidiennement par cron (8) pour mettre à jour la base de données par défaut.

Exemple...

locate *.txt

résulte en

/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

Ce qu'il montre est affiché instantanément et vous pouvez rechercher avec un regex.

7
Rinzwind

Non, il n'y a pas d'outil comme ça. Tous les outils de recherche que je connais s'appuient sur leurs propres bases de données et ne peuvent pas utiliser les données d'index et de journal du système de fichiers interne comme Everything can.

Cela dit, je pense que dans des circonstances normales, les outils "Linux" sont plus que suffisants. locate est capable d'indexer des fichiers sur n'importe quel système de fichiers (contrairement à Everything) et est également très rapide. Si vous souhaitez rechercher des documents personnels ou lancer des programmes, lancez un logiciel comme gnome-do ou kupfer convient mieux à cette tâche.

1
arrange

J'ai pu installer la version Windows de Everything (1.3.4.686.x86) en utilisant PlayOnLinux 4.2.6 sur Ubuntu 15.10. Il fonctionne parfaitement et indexera à la fois la partition Ubuntu, les partitions NTFS sur le même lecteur et les lecteurs NTFS ajoutés. Il fonctionne aussi rapidement et sans effort que sur Windows 7.

0
FredK

Oui, nous avons des utilitaires comme ça. Premièrement, Nautilus (le navigateur de fichiers) vous permet de rechercher rapidement dans vos fichiers. Pour les fichiers que vous avez utilisés, vous pouvez appuyer sur super + F pour ouvrir la lentille Fichiers et dossiers et saisir un nom de fichier. Il existe également des indexeurs de fichiers comme Tracker (qui seront probablement accessibles depuis la lentille Fichiers et dossiers un certain temps).

0
Jo-Erlend Schinstad

en ligne de commande j'utilise locate comme décrit par Rinzwind (1+), si vous avez besoin d'une interface graphique j'aime google desktop .

0
Michał Šrajer

Je ne me souviens pas où je l'ai volé mais essayez ce script:

    #!/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

Copiez et collez ce script dans un fichier texte ...

Une fois terminé, rendez-le exécutable (Sudo chmod + x) puis placez-le dans/usr/local/bin ou ~/bin

maintenant, si le nom de votre script est recherche, vous devez numériser

recherche nomefile

:)

Un autre outil prometteur:

http://www.lesbonscomptes.com/recoll/

0
Pitto