Die gesamte Festplatte durchsuchen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von blck, 16.01.2007.

  1. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Moin, Moin
    Also ich hab mal wieder ein Problem: :hilfe2:
    Ich möchte meine gesamte Festplatte über die Linuxshell, nach einer DAtei durchsuchen lassen...von der ich nicht weiß, nicht ma ansatz weiße in welchem Verzeichnis sie liegt.
    Ist das über irgendein Befehl möglich?
    Hinweis:
    locate, fin, und test sind dafür ja anscheinend nicht zu gebrauchen, da diese immer eine Pfadangabe brauchen. :oldman
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. hengs

    hengs Tripel-As

    Dabei seit:
    21.02.2005
    Beiträge:
    217
    Zustimmungen:
    0
    Ort:
    Salzburg
    Mit

    Code:
    find
    kannst Du alles durchsuchen was Du willst
     
  4. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    find?

    Danke erstmal für die schnelle Antwort, aber find braucht doch ne Pfad angabe.
    Also man müsste doch theorethisch schreiben find /teil/pfad/zur/Datei und dann die Datei bzw sowas wie find /home und dann die Datei.
    Korrigiert mich bitte falls ich falsch liege :oldman

    Gruß blck
     
  5. hengs

    hengs Tripel-As

    Dabei seit:
    21.02.2005
    Beiträge:
    217
    Zustimmungen:
    0
    Ort:
    Salzburg
    mit z.B.

    Code:
    find /usr -name *.sh

    Durchsuche meine gesamte Partion die auf /usr einghängt ist nach Dateien mit
    *.sh und das rekursiv, sprich in allen Unterverzeichnissen
     
  6. #5 supersucker, 16.01.2007
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    1.

    Kannst du ja find einfach das Wurzelverzeichnis als Pfad geben, dann wird halt alles durchsucht:

    Code:
    find / -name foo
    2.

    Braucht locate keinen Pfad:

    Code:
    updatedb
    locate foo.bar
     
  7. #6 schorsch312, 16.01.2007
    schorsch312

    schorsch312 Routinier

    Dabei seit:
    18.07.2006
    Beiträge:
    372
    Zustimmungen:
    0
    Hi,
    Schau dir mal das Duo
    updatedb (als root)
    und locate (als normaler user)

    Als erstes erstellst du eine Such-Datenbank mit dbupdate und kannst dann mit locate suchen.
    Gruß, Georg


    Edit:
    Da war supersucker um Sekunden schneller als ich! :-(
     
  8. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Wow

    Wow so viele Möglichkeiten und nur eine die ich nehmen kann. Ich werds mal probieren danke:D :D :D :D
     
  9. ux2

    ux2 Grendel Kleinbell

    Dabei seit:
    27.07.2006
    Beiträge:
    56
    Zustimmungen:
    0
    ja und so viele moeglichkeiten mal ohne zu klicken ..........

    unixseidank
     
  10. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Oh Jaa unixseidank... ich komm aber nicht weiter

    Moin,
    um mal ins Detail zu gehen hier mal die von mir geschriebene Anweisung um zu testen ob es eine Datei mit der Endung *.kl überhaupt auf der Platte gibt... da ich mich weder mit der Shell noch mit den Befehlen so gut auskenne, bitte ich nochma um hilfe...

    Code:
     if  locate -d *.kl ; then
     ex=1
     fi 
    Ich hatte mir gedacht, das diese Anweisung einfach eine Variable auf eins setzt wenn die Datei vorhanden ist, damit ich sonst falls ex=0 eine Art kleine Installation starten kann. :oldman
    Danke schon mal :D
     
  11. #10 Wolfgang, 16.01.2007
    Zuletzt bearbeitet: 16.01.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Das kann so nicht funktionieren, da sind gleich mehrere Fehler drin.
    locate -d /path/foo
    sucht im Verzeichnis path nach einer updatedb foo, um diese nach deinem pattern (Hier keine) zu durchsuchen.
    man locate

    Schau dir mal die man bash zu if an.

    If testet auf wahr oder false einer Bedingung.
    In deinem fall möchtest du testen ob locate etwas findet.
    locate liefert aber nicht 0 oder 1, sondern lediglich die gefundenen Zeilen oder Nichts.
    Du musst also den Returnwert selber testen, welcher unmittelbar nach Ausführung von locate in der Variable $? steht.
    Im Erfogsfall 0
    sonst > 0

    Code:
    locate pattern 2>1 &>/dev/null;
    if [ $? -gt 0 ]; then 
    echo "Nichts gefunden"
    else
    echo "Mindestens eine Datei gefunden"
    fi
    
    
    Gruß Wolfgang
     
  12. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Also.....

    Ich schein mich nen bisschen dumm anzustellen.
    Also ich habe jetzt geschrieben:

    Code:
    find / -name foo  *.kl   2>1 &>/usr/;
     if [ $? -gt 0 ]; then 
     echo "Nichts gefunden"
     else
     echo "Mindestens eine Datei gefunden"
     fi
    bzw:

    Code:
    locate "install.kl" 2>1 &>/usr/;
     if [ $? -gt 0 ]; then 
     echo "Nichts gefunden"
     else
     echo "Mindestens eine Datei gefunden"
     fi
    aber so wirklich was finden will er nicht....
    Ich habe eine auch die "Datenbank" über updatedb aktualisiert... Könnt ihr mir sagen was ich falsch gemacht habe?
     
  13. #12 damager, 17.01.2007
    damager

    damager Moderator

    Dabei seit:
    27.08.2003
    Beiträge:
    3.065
    Zustimmungen:
    0
    Ort:
    Munich
    Code:
    locate "install.kl" > /dev/null  2>&1
     if [ $? -gt 0 ]; then
     echo "Nichts gefunden"
     else
     echo "Mindestens eine Datei gefunden"
     fi
    
    ....ist was du suchst :]
    die umleitung nach /usr ist sinnfrei und fast gefährlich.
    wichtig ist nur das das die locatedb immer aktuell gehalten wird :oldman
     
  14. #13 schorsch312, 17.01.2007
    schorsch312

    schorsch312 Routinier

    Dabei seit:
    18.07.2006
    Beiträge:
    372
    Zustimmungen:
    0
    Am besten mit einen cron job beim Herunterfahren starten, da stöhrt die zeit die das braucht nicht.
    Gruß, Georg
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. #14 Schlaubi_fi.de, 17.01.2007
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    ...den Sinn kapiere ich nicht - wann wird ein Linux/Unix Server denn regelmäßig heruntergefahren?? (vielleicht habe ich auch was nur falsch verstanden)
    Ich empfehle die Aktualisierung der locatedb in der Nacht!
     
  17. #15 Bâshgob, 17.01.2007
    Bâshgob

    Bâshgob freies Radikal

    Dabei seit:
    29.07.2004
    Beiträge:
    2.334
    Zustimmungen:
    0
    Ort:
    Hannover
    Mit slocate bekommt der User lediglich die Dateien angezeigt auf die er auch tatsächlich Zugriff hat.

    Nur der Vollständigkeit halber ;)
     
Thema: Die gesamte Festplatte durchsuchen
Besucher kamen mit folgenden Suchen
  1. Festplatte durchsuchen

    ,
  2. LINUX Festplatten durchsuchen

    ,
  3. linux locate ganze platte

    ,
  4. linux festplatte nach datei suchen,
  5. datei suchen linux,
  6. Kubuntu gesamte festplatte nach Datei
Die Seite wird geladen...

Die gesamte Festplatte durchsuchen - Ähnliche Themen

  1. FIND über gesamtes Dateisystem, einen Ordner (Partition) auslassen...

    FIND über gesamtes Dateisystem, einen Ordner (Partition) auslassen...: Hallo, ich möchte gern über das gesamte Dateisystem einen find nach einer Datei laufen lassen: find / -name DATEI dabei möchte ich aber...
  2. Komplettverschlüsselung des gesamten Systems

    Komplettverschlüsselung des gesamten Systems: Hallo zusammen, ich habe auf meinem Notebook im Moment eine DualBoot-Konfiguration von Ubuntu (6.06 Dapper) und Windows XP. Diese liegen zu...
  3. Ein Dank an die gesamte Unixboard Community

    Ein Dank an die gesamte Unixboard Community: Halli Hallo liebe UB-Community! :D Heute komme ich mal nicht mit einer doofen Frage oder sonstiges - sonder mit einem "DANK" an die gesamte...
  4. Festplatte auf SD Karte umziehen

    Festplatte auf SD Karte umziehen: Hi zusammen, ich habe einen alten Laptop zum Server umfunktioniert. habe bei der Installation von CentOS bzw. der Partitionierung die...
  5. Western Digital widmet dem Raspberry Pi eine eigene Festplatte

    Western Digital widmet dem Raspberry Pi eine eigene Festplatte: Der Festplattenhersteller Western Digital (WD) gibt die Verfügbarkeit einer 314 GByte großen Festplatte für den Raspberry Pi bekannt. Weiterlesen...