Gibt es eine schnelle Suchfunktion für Dateien?
-
- Posts: 1045
- Joined: Mon 26 Nov 2007, 22:07
- Location: Blomberg / Germany
Gibt es eine schnelle Suchfunktion für Dateien?
Gibt es für Linux / Puppy ein Programm mit dem Dateien auf der Festplatte schneller gefunden werden als mit PFind?
Ich finde Pfind extrem langsam vergleichbar mit dem Dateiexplorer unter Windows.
Für Windows gibt es ein externes Programm Everything mit dem sich ganze Festplatten innerhalb weniger Sekunden bzw. sogar in Echtzeit durchsuchen lassen.
Der Unterschied ist wohl, dass Everything nicht jede Datei in jedem Verzeichnis durchsucht sondern nur den Master File Table (MTF) der gesamten Festplatte. Man kann dann zwar nur nach dem Dateinamen suchen aber das reicht in den meisten Fällen völlig aus!
Gibt es so etwas auch für Puppy?
LG
Wolfgang
Ich finde Pfind extrem langsam vergleichbar mit dem Dateiexplorer unter Windows.
Für Windows gibt es ein externes Programm Everything mit dem sich ganze Festplatten innerhalb weniger Sekunden bzw. sogar in Echtzeit durchsuchen lassen.
Der Unterschied ist wohl, dass Everything nicht jede Datei in jedem Verzeichnis durchsucht sondern nur den Master File Table (MTF) der gesamten Festplatte. Man kann dann zwar nur nach dem Dateinamen suchen aber das reicht in den meisten Fällen völlig aus!
Gibt es so etwas auch für Puppy?
LG
Wolfgang
Gibt es das in Puppy (Konsole):
EDIT: Man muss vorher allerdings die Datenbank, die locate nutzt ggf. aktualisieren...
Code: Select all
locate dateiname
[color=blue][size=75]Toshiba Satallite M30X-124 | ATI Mobility Radeon 9700 | Intel PRO/Wireless 2200BG
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
locate ist aber in Puppy IDR nicht standardmaessig beigefuegt .
Windows finde ich extrem langsam und verweigert mir Zugang zu manchen versteckten Ordnern .
Auf Windows benutze ich deshalb die Cygwin Linux Console mit find .
Cygwin ist das Gegenteil von Wine .
pfind nutzt "find" um Daten zu finden und "grep" um in Daten zu finden .
find ist das erste mal immer langsam. Beim zweiten mal werden RAM-Puffer des kernels genutzt und sind dann schneller .
Viel RAM fuer Winmurks und wenig RAM fuer Puppy -- SEHR FAIR !
Windows finde ich extrem langsam und verweigert mir Zugang zu manchen versteckten Ordnern .
Auf Windows benutze ich deshalb die Cygwin Linux Console mit find .
Cygwin ist das Gegenteil von Wine .
pfind nutzt "find" um Daten zu finden und "grep" um in Daten zu finden .
find ist das erste mal immer langsam. Beim zweiten mal werden RAM-Puffer des kernels genutzt und sind dann schneller .
Viel RAM fuer Winmurks und wenig RAM fuer Puppy -- SEHR FAIR !
Macht pfind immer beides? Dann sollte find auf der Konsole ja schon einen ordentlichen Schub bringen.Karl Godt wrote:pfind nutzt "find" um Daten zu finden und "grep" um in Daten zu finden
[color=blue][size=75]Toshiba Satallite M30X-124 | ATI Mobility Radeon 9700 | Intel PRO/Wireless 2200BG
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
Weiss ich jetzt gar nicht.antilet wrote:Macht pfind immer beides? Dann sollte find auf der Konsole ja schon einen ordentlichen Schub bringen.Karl Godt wrote:pfind nutzt "find" um Daten zu finden und "grep" um in Daten zu finden
pfind nutzt pfilesearch , und das bemerkt man oft gar nicht.
Puppy GUIs sind immer ein bisschen buggig - also 'reingucken und die Knarre Ratschenschluessel mit 'nen paar Nuessen hervorgezaubert ..
( Benutze GUIs und pfind und zigberts code ungern - ausser pburn )
Aber dass habe ich jetzt nicht gesagt
-
- Posts: 1045
- Joined: Mon 26 Nov 2007, 22:07
- Location: Blomberg / Germany
Habe find getestet und finde es sehr langsam.
Wenn ich es richtig nachgelesen habe durchsucht es nur einzelne Verzeichnisse und nicht eine ganze Festplatte.
Ist also eher nicht so toll!
den Befehl locate kennt mein Lucid nicht.
Gibt es locate vielleicht zum Nachrüsten mit einer Gui?
Oder gibt es noch ein anderes wirklich schnelles Suchprogramm?
Wenn ich es richtig nachgelesen habe durchsucht es nur einzelne Verzeichnisse und nicht eine ganze Festplatte.
Ist also eher nicht so toll!
den Befehl locate kennt mein Lucid nicht.
Gibt es locate vielleicht zum Nachrüsten mit einer Gui?
Oder gibt es noch ein anderes wirklich schnelles Suchprogramm?
Ich habe mal die find-doku gelesen
also
durchsucht doch die ganze Festplatte. Und ich fand es recht fix.
Code: Select all
https://help.ubuntu.com/community/find
Code: Select all
find / -iname *suchmich*
http://packages.ubuntu.com/search?keywords=locate
Aber das kostet jetzt einen Ein-Jahres-Vertag mit dem Ober-Recktor Deiner Schule, Schutzhund !
Endich gibts 'mal mehr als Harztz4 !!
Zwei Tage und schon 30 Euro ausgegben !!
find findet alles, was gemountet ist . Wenn 50x20GiB-Partitionen auf der Festplatte rumschwirren ..
Weiter gibt es wohl alle Moeglichen *SQL* Datei-Fundamente ..
Aber das kostet jetzt einen Ein-Jahres-Vertag mit dem Ober-Recktor Deiner Schule, Schutzhund !
Endich gibts 'mal mehr als Harztz4 !!
Zwei Tage und schon 30 Euro ausgegben !!
find findet alles, was gemountet ist . Wenn 50x20GiB-Partitionen auf der Festplatte rumschwirren ..
Weiter gibt es wohl alle Moeglichen *SQL* Datei-Fundamente ..
Hm, und ich dachte immer, die (leider) in diese Kategorie "fallenden" Menschen bekämen ALGII (Arbeitslosengeld II) und 'Hartz' 1-4 wären die zugehörigen Gesetze, die "Putins liebster, deutscher Freund" zusammen mit dem "Brasilianische-Nutten-Ficker" vom "Hitler-Auto-Konzern" entwickelt und installiert hat?Karl Godt wrote:Endich gibts 'mal mehr als Harztz4 !!
Muß ich wohl 'was verpaßt, falsch verstanden oder schlicht ein Bier zuwenig getrunken haben...
By the way: find ist recht schnell auf Festplatten mit wenig Inhalt oder im Dateisystem des laufenden Puppy. Auf einer 1 TB Platte mit nur noch 70 GB freiem Speicherplatz ist es aber definitv NICHT zu gebrauchen. Da kann man locker anfangen ein Mahl zuzubereiten und auch noch zu sich zu nehmen!
[b][url=http://lazy-puppy.weebly.com]LazY Puppy[/url][/b]
[b][url=http://rshs-dna.weebly.com]RSH's DNA[/url][/b]
[url=http://murga-linux.com/puppy/viewtopic.php?t=91422][b]SARA B.[/b][/url]
[b][url=http://rshs-dna.weebly.com]RSH's DNA[/url][/b]
[url=http://murga-linux.com/puppy/viewtopic.php?t=91422][b]SARA B.[/b][/url]
Hai, also ich habe hier 1TB Festplatte die zur Hälfte voll ist und die Suche ist genauso schnell. Vielleicht liegt es ja an was anderem?
Zieh doch mal einen Geschwindigkeitsvergleich mit einem anderen Computer oder einem anderen Betriebssystem oder einer anderen Festplatte.
Vielleicht bringt das Licht ins dunkel?
Vielleicht hilft hier ein Messscript. Ich habe das nur angerissen, sicher kannst Du das viel besser.
Gemessen wird die Suche nach einem Begriff, den es nicht gibt. Geht das unter einem anderen BS, oder einer anderen Festplatte schneller?
Zieh doch mal einen Geschwindigkeitsvergleich mit einem anderen Computer oder einem anderen Betriebssystem oder einer anderen Festplatte.
Vielleicht bringt das Licht ins dunkel?
Code: Select all
#!/bin/sh
startzeit=`date +%s > messung.txt`
find /mnt/sdb1 -iname *gibts nicht*
endzeit=`date +%s >> messung.txt`
Gemessen wird die Suche nach einem Begriff, den es nicht gibt. Geht das unter einem anderen BS, oder einer anderen Festplatte schneller?
- L18L
- Posts: 3479
- Joined: Sat 19 Jun 2010, 18:56
- Location: www.eussenheim.de/
Messscript.
Code: Select all
time find /mnt/sdb1 -iname *gibts nicht*
Last edited by L18L on Fri 30 Aug 2013, 07:15, edited 1 time in total.
Locate ist in den Repositories für Ubuntu.
Kann man also problemlos nachinstallieren mit einem "nomalen" Ubuntu-Derivat. Wie es mit deinem speziellen Lucid ist, kann ich natürlich nicht sagen.
Aber Rainer hat diesbezüglich ja schon eine erhellende Antwort gegeben:
Kann man also problemlos nachinstallieren mit einem "nomalen" Ubuntu-Derivat. Wie es mit deinem speziellen Lucid ist, kann ich natürlich nicht sagen.
Aber Rainer hat diesbezüglich ja schon eine erhellende Antwort gegeben:
[color=blue][size=75]Toshiba Satallite M30X-124 | ATI Mobility Radeon 9700 | Intel PRO/Wireless 2200BG
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
Most Linux need special boot options to boot on this laptop: i8042.nomux=1 highres=off nohz=off irqpoll[/size][/color]
Man koennte zB eine find DatenBank aufbauen durch ein kleines Skript in /etc/init.d/ , welches die Datei find.db.text aufbaut beim Hochfahren :
bash-3.00# time find / >find.db.text
real 0m4.971s
user 0m0.583s
sys 0m4.306s
Dann scheint es doppelt so schnell , die gesuchte Datei aus der find.db.text-Datei zu greifen :
bash-3.00# time grep "*gibbes nisch*" find.db.text
real 0m1.854s
user 0m1.823s
sys 0m0.013s
INFO : Anstatt date nahm ich die bashseitig eingebaute time Funktion .
Packet coreutils muesste time auch als Binaer-Datei haben .
bash-3.00# time find / >find.db.text
real 0m4.971s
user 0m0.583s
sys 0m4.306s
Dann scheint es doppelt so schnell , die gesuchte Datei aus der find.db.text-Datei zu greifen :
bash-3.00# time grep "*gibbes nisch*" find.db.text
real 0m1.854s
user 0m1.823s
sys 0m0.013s
INFO : Anstatt date nahm ich die bashseitig eingebaute time Funktion .
Packet coreutils muesste time auch als Binaer-Datei haben .
Hai Karl,
ist das denn alltagstauglich? Könnte man daraus eine neue Suchfunktion machen?
Oder dauert das beim booten zu lange?
Oder war das nur ein Spruch?
Ich werde mich mal mit der Idee beschäftigen ... wollen doch mal sehen.
20 Minuten später ...
Also, die ersten Tests sind abgeschlossen. Das suchen muß nicht beim booten passieren.
Im Startup Ordner läuft das auch und man bekommt nicht mal was davon mit.
Die Datei ist am ende nicht so groß.
Die Idee scheint gut zu sein. Oder?
ist das denn alltagstauglich? Könnte man daraus eine neue Suchfunktion machen?
Oder dauert das beim booten zu lange?
Oder war das nur ein Spruch?
Ich werde mich mal mit der Idee beschäftigen ... wollen doch mal sehen.
20 Minuten später ...
Also, die ersten Tests sind abgeschlossen. Das suchen muß nicht beim booten passieren.
Im Startup Ordner läuft das auch und man bekommt nicht mal was davon mit.
Code: Select all
cd /
find / -iname '*' > /find.db
Die Idee scheint gut zu sein. Oder?
Weiss ich jetzt nicht .. Meine find.db.text ist
bash-3.00# wc -l find.db.text
403818 find.db.text
~400.000 Zeilen lang ..
bash-3.00# ls -s --block-size=K find.db.text
21352K find.db.text
bash-3.00# ls -s --block-size=M find.db.text
21M find.db.text
*
Das hier ist nun mlocate :
http://packages.debian.org/source/sid/mlocate
Kompilliert gut auf meiner Puppy-4 , einfach
in der Sossen-Kanne .. sehr sehr fix !
Bierher-Dateien sind aber benannt " locate " und " updatedb " und nicht " mlocate " und " mupdatedb " -- also aufgepasst , solte etwas (nicht) ueberschrieben werden .
ls -s --block-size=M /usr/local/var/mlocate/mlocate.db
8M /usr/local/var/mlocate/mlocate.db
bash-3.00# wc -l find.db.text
403818 find.db.text
~400.000 Zeilen lang ..
bash-3.00# ls -s --block-size=K find.db.text
21352K find.db.text
bash-3.00# ls -s --block-size=M find.db.text
21M find.db.text
*
Das hier ist nun mlocate :
http://packages.debian.org/source/sid/mlocate
Kompilliert gut auf meiner Puppy-4 , einfach
Code: Select all
./configure ; make ; new2dir make install ; addgroup -S -g 2120 mlocate ; updatedb ; locate -i -e "*locate*"
Bierher-Dateien sind aber benannt " locate " und " updatedb " und nicht " mlocate " und " mupdatedb " -- also aufgepasst , solte etwas (nicht) ueberschrieben werden .
ls -s --block-size=M /usr/local/var/mlocate/mlocate.db
8M /usr/local/var/mlocate/mlocate.db
Man kann die DateienBasis .db. Datei auch komprimieren :
ls -s --block-size=M find.db.text.compressed.bz2
ist dann nur
2M find.db.text.compressed.bz2
anstatt von 21M = 10% !
time grep "geany" find.db.text
dauert bei mir
real 0m2.669s
user 0m2.453s
sys 0m0.023s
und
time bzcat find.db.text.compressed.bz2 | grep -i "geany"
real 0m3.851s
user 0m3.660s
sys 0m0.057s
also nur bash-3.00# echo $((3851*100/2669))
144 -> 44% langsamer
Aber
time locate -i "geany"
real 0m0.739s
user 0m0.680s
sys 0m0.013s
bash-3.00# echo $((739*100/2669))
27 -> 73% schneller
schlaegt grep ganz schoen in einer Welt, in der die Almdudler-Abfahrt im 1000stel Sekunden Bruchteil gewonnen wird .
http://packages.debian.org/sid/doodle
braucht lieb-extractor und die ist mir mit 7-8MB fuer heute zuviel bei meiner Bandbreiten-SchnappsDrosselung : GRINS :
Code: Select all
cp find.db.text find.db.text.compressed
bzip2 find.db.text.compressed
ist dann nur
2M find.db.text.compressed.bz2
anstatt von 21M = 10% !
time grep "geany" find.db.text
dauert bei mir
real 0m2.669s
user 0m2.453s
sys 0m0.023s
und
time bzcat find.db.text.compressed.bz2 | grep -i "geany"
real 0m3.851s
user 0m3.660s
sys 0m0.057s
also nur bash-3.00# echo $((3851*100/2669))
144 -> 44% langsamer
Aber
time locate -i "geany"
real 0m0.739s
user 0m0.680s
sys 0m0.013s
bash-3.00# echo $((739*100/2669))
27 -> 73% schneller
schlaegt grep ganz schoen in einer Welt, in der die Almdudler-Abfahrt im 1000stel Sekunden Bruchteil gewonnen wird .
http://packages.debian.org/sid/doodle
braucht lieb-extractor und die ist mir mit 7-8MB fuer heute zuviel bei meiner Bandbreiten-SchnappsDrosselung : GRINS :
Hallo,
Es gibt auch Bulldog Finder 3.4 durch Don570.
Klein (11.47KB Pet) und schnell.
Vielleicht ist das auch eine Möglichkeit?
Es gibt auch Bulldog Finder 3.4 durch Don570.
Klein (11.47KB Pet) und schnell.
Vielleicht ist das auch eine Möglichkeit?
[url=http://pupsearch.weebly.com/][img]http://pupsearch.weebly.com/uploads/7/4/6/4/7464374/125791.gif[/img][/url]
[url=https://startpage.com/do/search?q=host%3Awww.murga-linux.com%2F][img]http://i.imgur.com/XJ9Tqc7.png[/img][/url]
[url=https://startpage.com/do/search?q=host%3Awww.murga-linux.com%2F][img]http://i.imgur.com/XJ9Tqc7.png[/img][/url]
Hai Bert, den Bulldogfinder schaue ich mir an, aber gerade lässt mich ein Gedanke nicht los.
Also, ich habe den Ansatz nochmal geändert. Jetzt wird die Datenbank erstellt, während der User noch eingibt. Die Zeit reicht, glaube ich. damit hätte man dann auch immer aktuelle Dateilisten.
Also, ich habe den Ansatz nochmal geändert. Jetzt wird die Datenbank erstellt, während der User noch eingibt. Die Zeit reicht, glaube ich. damit hätte man dann auch immer aktuelle Dateilisten.
Bis jetzt alles nur ein Ansatz, aber vielversprechend?#!/bin/sh
cd /root/suchen
find / -iname '*' > find.db &
GTKDIALOG=gtkdialog
export MAIN_DIALOG='
<window title="Suchwort eingeben" resizable="false">
<frame suche nach>
<vbox>
<hbox>
<text><label> .</label></text>
<entry><variable>willi</variable></entry>
</hbox>
<hbox>
<button></button>
</hbox>
</vbox>
</frame>
</window>
'
gtkdialog -p MAIN_DIALOG
-
- Posts: 1045
- Joined: Mon 26 Nov 2007, 22:07
- Location: Blomberg / Germany
Hallo zusammen,
habe eben mal mit "Suche Everything" unter XP meine Festplatte gescannt.
Die Festplatte im Notebook ist ca. 180GB groß und ca. 15GB sind noch frei. Es sind drei NTFS-Partitionen eingerichtet die beim Start von "Suche Everything" einmal in eine Datenbank gescannt werden.
Das dauert 30 Sek.
Danach können Teile des Dateinamens in ein Suchfeld eingegeben werden und die Anzeige der Ergebnisse erfolgt dann in Echtzeit!
Bulldogfinder habe ich getestet. Ist nicht viel schneller als PFind!
Der springende Punkt ist, dass nicht die Verzeichnisse der Reihe nach Dateien durchsucht werden sondern eben der Master File Table (MTF) der Festplatte!
Das dann in eine eigene Datenbank und fertig.
Hier gibt es ja auch schon ein paar tolle Ansätze! Bin mir fast sicher, dass am Ende eine schnellere Suchfunktion steht als dies mit PFind möglich ist.
LG
Wolfgang
habe eben mal mit "Suche Everything" unter XP meine Festplatte gescannt.
Die Festplatte im Notebook ist ca. 180GB groß und ca. 15GB sind noch frei. Es sind drei NTFS-Partitionen eingerichtet die beim Start von "Suche Everything" einmal in eine Datenbank gescannt werden.
Das dauert 30 Sek.
Danach können Teile des Dateinamens in ein Suchfeld eingegeben werden und die Anzeige der Ergebnisse erfolgt dann in Echtzeit!
Bulldogfinder habe ich getestet. Ist nicht viel schneller als PFind!
Der springende Punkt ist, dass nicht die Verzeichnisse der Reihe nach Dateien durchsucht werden sondern eben der Master File Table (MTF) der Festplatte!
Das dann in eine eigene Datenbank und fertig.
Hier gibt es ja auch schon ein paar tolle Ansätze! Bin mir fast sicher, dass am Ende eine schnellere Suchfunktion steht als dies mit PFind möglich ist.
LG
Wolfgang