LINUX

ANGRYsearch – Strumento di ricerca di file super veloce su Linux

strumento di ricerca file arrabbiato

ANGRYsearch è un’utilità di ricerca di file Linux che tenta di emulare il “motore di ricerca di tutto” disponibile in Windows. ANGRYsearch visualizza il risultato mentre digiti nomi di file o directory.

ANGRYsearch è scritto in python 3 usando PyQt5 per la GUI. Questo tutorial copre l’installazione e l’uso di questo strumento, un’utilità di ricerca rapida basata su Python in qualsiasi distribuzione basata su Linux.

Installa i pacchetti richiesti

L’installazione è semplice in quanto non esiste un modo complesso per compilare dal sorgente ecc. I passaggi includono alcune dipendenze che devono essere installate in anticipo.

Dipendenze – python3-pyqt5, xdg-utils

PyQt5 è richiesto per la GUI python3 e la maggior parte delle distribuzioni ha xdg-utils pronto all’uso.

 # sudo apt install python3-pyqt5 xdg-utils

Dipendenze facoltative

oggetto python3 – Notifiche sul desktop per l’aggiornamento automatico.

xdotool – Questo è necessario se usi Thunar o PCmanFM e utilizzi l’opzione di configurazione fm_path_doubleclick_selects

Installazione oggetto python3

 # sudo apt install python-gi python-gi-cairo python3-gi python3-gi-cairo gir1.2-gtk-3.0

Installa xdotool

 # sudo apt-get install xdotool

Installa ANGRYSearch

Una volta installate le dipendenze, scarica ANGRYsearch e decomprimilo. La directory unpack conterrà un file denominato install.sh . Questo script copierà i file nella posizione desiderata con le autorizzazioni corrette.

 # wget https://github.com/DoTheEvo/ANGRYsearch/archive/v1.0.0.tar.gz
 # tar xf v1.0.0.tar.gz
 # cd ANGRYsearch-1.0.0
 # chmod u+x install.sh 
 # sh install.sh

A questo punto si può eseguire la ricerca furiosa eseguendo nel terminale o cliccandoci sopra da “Accessori” nel menu di avvio.

 # angrysearch
Inizializza AngrySearch

Configura ANGRYSearch

Il file di configurazione e il database si trovano nel file ~/.config/angrysearch/angrysearch.conf e ~/.cache/angrysearch/angry_database.db rispettivamente. Il database ANGRYsearch può essere impostato su due diverse modalità nel file di configurazione, modalità semplificata e modalità completa, l’impostazione predefinita è la modalità semplificata.

modalità leggera mostra solo il nome e il percorso del file e della directory.

modalità completa mostra la dimensione e la data dell’ultima modifica

Lo svantaggio della modalità completa è che impiega circa il doppio del tempo per eseguire la scansione delle unità poiché ogni file e directory riceve chiamate statistiche aggiuntive.

Ci sono 3 modalità di ricerca, l’impostazione predefinita è veloce.

Modalità veloce – Questo è abilitato quando hai selezionato la casella di controllo accanto al campo di input ma non riesci a trovare le sottostringhe.
Modalità lenta – Questa modalità è abilitata quando la casella di controllo è deselezionata. Questa modalità è leggermente più lenta, ma può trovare sottostringhe.
Modalità regolare – Puoi attivare questa modalità premendo il tasto F8, indicato dallo sfondo arancione. Questa è la ricerca più lenta delle tre utilizzate per ricerche estremamente precise utilizzando espressioni regolari, impostate per non fare distinzione tra maiuscole e minuscole. In questa modalità, non viene cercato l’intero percorso, vengono visualizzati solo i nomi dei file e delle directory.

Modifica il file di configurazione e modifica i valori dei parametri secondo la tua scelta.

 #  vi ~/.config/angrysearch/angrysearch.conf
 [General]
 angrysearch_lite=false
 conditional_mounts_for_autoupdate=/mnt/angrySearch
 darktheme=false
 directories_excluded=.thumbnails
 fast_search_but_no_substring=true
 file_manager=spacefm
 fm_path_doubleclick_selects=false
 icon_theme=faenza
 notifications=true
 number_of_results=500
 regex_mode=true
 row_height=25
 typing_delay=false

 [Last_Run]
 geometry=@ByteArray(x1xd9xd0xcbx2x9cKx3mx2x83x9dgx3lx2x82x4)
 window_state=@ByteArray(xffxfdx2xd0x2x6x4x4bbxfc)

Il file di configurazione di cui sopra viene creato quando la ricerca furiosa viene eseguita per la prima volta. Puoi anche eliminare questo file. All’esecuzione successiva, questo file viene creato nuovamente con i valori predefiniti.

arrabbiatosearch_lite: Questo è impostato su true per impostazione predefinita.

conditional_mounts_for_autoupdate: Per impostazione predefinita, vuoto. Punti di montaggio richiesti quando il database viene aggiornato. L’aggiornamento automatico tramite crontab non verrà eseguito se manca il punto di montaggio. In questo caso, una finestra di notifica del sistema informerà che manca il punto di montaggio e impedirà la sovrascrittura del database di ricerca quando non sono presenti tutte le unità. I valori di questi campi sono punti di montaggio del sistema separati da spazi.

tema scuro: Predefinito impostato su false. Se impostato su true, il tema scuro viene utilizzato per l’interfaccia dell’applicazione come definito in qdarkstylesheet.qss. Le icone per il tema scuro sono contenute nel file resource_file.py.

directory_escluse: Per impostazione predefinita, vuoto. Directory da ignorare durante la ricerca. I valori sono nomi di directory separati da spazi. La directory /proc è hardcoded per essere ignorata.

fast_search_but_no_substring: Per impostazione predefinita, impostato su true. Questo campo contiene gli ultimi valori della casella di controllo che influenzano la velocità di ricerca e le sottostringhe.

gestore file: Per impostazione predefinita, vuoto. Se lasciato vuoto, angrysearch tenterà di rilevare automaticamente il file manager predefinito utilizzando xdg-utils. Se i file manager sono impostati/rilevati (“dolphin”, “nemo”, “nautilus”, “doublecmd”) il comportamento cambierà leggermente, inviando a quei file manager il percorso completo del file, evidenziando il file di destinazione quando viene aperto nella configurazione configurato. gestore di file.

fm_path_doubleclick_select: Predefinito impostato su falso. Richiede il pacchetto xdotool che ho installato nella sezione delle dipendenze. Se impostato su true, i file manager Thunar, PCmanFM e SpaceFM saranno in grado di aprire la directory contenente il file selezionato.

icon_theme: impostazione predefinita su adwaita. Questo può anche essere impostato dall’interfaccia del programma nella finestra di aggiornamento. Esistono 6 tipi di icone: cartella, file, audio, immagine, video, testo.

Notifiche: Per impostazione predefinita, impostato su true. Riceverai una notifica sul desktop per informarti che la scansione è in corso quando gli aggiornamenti periodici automatici sono impostati per essere eseguiti in background utilizzando crontab o se sono stati interrotti a causa di punti di montaggio mancanti.

numero_di_risultati: L’impostazione predefinita è 500. Questo campo limita le ricerche nel database. Un numero più basso significa che i risultati della ricerca arrivano più velocemente.

regex_mode: Predefinito impostato su falso. Abilita la modalità di ricerca regex. È possibile passare da vero a falso premendo il tasto F8 durante l’esecuzione dell’applicazione.

altezza della riga: Per impostazione predefinita, questo valore è impostato su 0, che è l’altezza predefinita del sistema. Altrimenti, puoi impostare l’altezza della riga in pixel.

ritardo_di digitazione: Per impostazione predefinita, questo valore è impostato su false. Se abilitato, introduce un ritardo di 0,2 secondi tra l’azione di digitazione e la ricerca nel database. Ciò impedirà query non necessarie al database quando l’utente sta digitando velocemente, poiché la ricerca furiosa attende che la digitazione finisca. Questo effettivamente migliora le prestazioni sulle auto più lente, ma su quelle moderne potrebbe influire negativamente sulla sensazione di immediata reattività.

Ultima_esecuzione: Proprietà delle applicazioni dall’ultima volta che è stato chiuso: dimensioni, posizione, stato della finestra.

Ora esegui nuovamente la ricerca furiosa e fai clic sul pulsante “Aggiorna” in alto a destra. Puoi impostare il tema delle icone, le directory ignorate anche attraverso questa interfaccia.

# angrysearch
Aggiornamento di AngrySearch

Aggiorna il database di Angrysearch in background

file angrysearch_update_database.py viene utilizzato per eseguire la scansione delle unità e aggiornare l’ambito di ricerca. Esegui automaticamente questo file utilizzando crontab per aggiornare periodicamente il database di ricerca ogni 30 minuti. Imposta il cron job per aggiornare il database di Angry Search usando il seguente comando.

 # crontab -e
 */30 * * * * /usr/share/angrysearch/angrysearch_update_database.py

Se il sistema viene spento durante l’orario pianificato, crontab non tenterà di ripristinare l’attività. Se l’impostazione di notifica è impostata su true, riceverai una notifica una volta eseguito correttamente il cronjob sopra. Se il valore del parametro conditional_mounts_for_autoupdate è vuoto, verrai avvisato che manca il punto di montaggio. Le notifiche desktop di cronjob non funzionano sempre, quindi la tua distribuzione potrebbe esserne sprovvista.

Conclusione

L’utilità di ricerca file predefinita in Linux è integrata con un file manager come dolphin, che richiede tempo durante la ricerca di un file o di directory. AngrySearch, d’altra parte, è un’utilità di ricerca rapida che puoi utilizzare se devi cercare file a intervalli regolari. Sono necessari circa 2 minuti per indicizzare 1 milione di file con una dimensione del database indicizzata di 300 MB a seconda di hdd/ssd. Il compromesso è che la ricerca furiosa richiede spazio per archiviare il database dell’indice invece della ricerca rapida.

Related Articles

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Back to top button
Close