Datei gefunden, aber leer

  • Hallo,

    irgendwas ist mit einer Datei passiert und die wird nicht mehr über

    Code
    -ls

    angezeigt.

    Mit dem Befehl

    Code
    sudo find -name program.sh

    wird zwar ein Programm gefunden, rufe ich es jedoch auf, bekomme ich die Fehlermeldung:

    Code
    command not found

    .

    Code
    vim program.sh

    zeigt mir eine leere Datei.

    Ich habe die aber nicht gelöscht, zumindest kein Befehl mit

    Code
    rm

    aufgerufen

    Was ist passiert?

  • Der Pfad wäre äußerst ungewöhnlich. Das cd am Anfang sollte nicht da sein. Auch das Leerzeichen vor der Dateiendung nicht.

    Bitte nochmal mit Eingabezeile und Ausgabezeile:

    Code
    find -name program.sh
    ls /
    ls /home/pi/programs
    cat /home/pi/programs/program.sh
  • Allgemein finde ich deinen Beitrag etwas komisch - oder verschenkst du Glaskugel?


    Am besten wirklich wie julian92 schon schrieb wirklich die komplette Ausgabe des Befehls posten!

    Das was du auf seine Frage hin gepostet hast wird von find bestimmt nicht ausgegeben worden sein - es sei denn du hast beim Erstellen der Datei bereits Bockmist gemacht :s

    Code
    -ls

    Ist aber auch nur ein Parameter für den Befehl

    Code
    ls

    ... also nur -ls wird in der Form auch nicht funktionieren.

  • Code
    cd/home/pi/programs/program.sh

    Wie ist die Ausgabe von:

    Code
    file /home/pi/programs/program.sh


    ?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • "Die Datei" ... Wenn sie an einem anderen Ort liegt aber du diesen nicht mit angibst, ist die Datei nicht leer sondern dort nicht existent.

    Wie gesagt - Poste doch mal bitte die exakte Ausgabe -> copy&paste <- von dem find Befehl! Am besten aber von den Befehlen die julian92 in Beitrag#4 erwähnt hat!

    Wenn du das wieder nicht machen möchtest werden wir nicht weiter kommen! Schulterzuckend ohne Glaskugel können wir dazu nix weiter sagen!


    Markier einfach in PuTTY den Text mit der Linken Maustaste, es wird dann automatisch in die Zwischenablage kopiert. Hier im Forum machst du dann einen Rechtsklick und gehst auf Einfügen.

  • Code
    find -name program.sh


    zeigt mir

    Code
    ./programs/program.sh


    Mit

    Code
    ls

    Kann ich das Programm in der Liste sehen, jedoch öffnen mit vim zeigt eine leere (neue) Datei.

    Code
    ls /

    gibt folgendes aus:

    Code
    bin  boot  boot.bak  dev  etc  home  lib  lost+found  media  mnt  opt  proc  root  run  sbin  selinux  srv  sys  tmd1  tmp  tmp1  usr  var
    Code
    ls /home/pi/programs


    Ausgabe:

    Code
    allegro-5.1.8.tar.gz    fork_1.c  fork_3.c    Taste.sh  timers.c
    allegro-5.1.8  allegro.c    files    fork_2.c  fork_4.c  KNOPF.sh    skript.py  program.sh
    Code
    cat /home/pi/programs/program.sh


    Ausgabe

    Code
    pi@raspberrypi ~ $
  • Code
    cat /home/pi/programs/program.sh


    Ausgabe

    Code
    pi@raspberrypi ~ $

    Wie ist das Datum dieser Datei? Zeig mal die Ausgaben von:

    Code
    ls -la /home/pi/programs/program.sh
    file /home/pi/programs/program.sh


    Welche Funktion hatte diese Datei?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Probiere das gleich aus. Also die Datei ist schon wichtig. Habe ein Back up der SD Karte. Es ist zwar nicht ganz aktuell, aber ich kann es wieder draufspielen. Mich beschäftigt die Frage was ist passiert. Ich habe dieses Programm nicht gelöscht, zumindest kein rm Befehl aufgerufen.

    Einmal editiert, zuletzt von Cool_pi (25. März 2015 um 10:01)


  • Mich beschäftigt die Frage was ist passiert. Ich habe dieses Programm nicht gelöscht, zumindest kein rm Befehl aufgerufen.

    Mit rm hättest Du die Datei und nicht den Inhalt der Datei gelöscht. Inhalt kann z. B. mit echo (oder gleichwertig) "gelöscht"/überschrieben werden, oder Du hast Du ursprüngliche Datei mit einer leeren Datei (gleichen Namens) ersetzt. Zum feststellen was passiert ist, hast Du dich aber (... aus evtl. verständlichen Gründen) bis jetzt, zu wenig kooperativ gezeigt.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

    Einmal editiert, zuletzt von rpi444 (25. März 2015 um 10:07)

  • So habe den Pi wieder angeschmissen ( und noch nicht weggeschmissen :fies: )

    Die erste Ausgabe:

    Code
    -rw-r--r-- 1 pi pi 0 Mar 25 07:28 /home/pi/programs/program.sh

    Die zweite Ausgabe:

    Code
    /home/pi/programs/program.sh: empty


    Das Programm wurde überschrieben mit einer leeren Datei wie es aussieht:( . Da lässt sich nichts mehr machen ( außer Backup nutzen oder neuschreiben) oder?

    P.S Also ich hatte das so vorher so gemacht, dass das Programm beim Start schon geladen ist. Es klappt tatsächlich, das Programm läuft beim Start ( auf Knopfdruck), obwohl der entsprechende Quellcode überschrieben wurde. Da lässt sich doch bestimmt was machen oder?

    Einmal editiert, zuletzt von Cool_pi (25. März 2015 um 12:59)


  • ..., obwohl der entsprechende Quellcode überschrieben wurde. Da lässt sich doch bestimmt was machen oder?

    Bleibt die Frage, was hast Du gemacht, weil der Inhalt der Datei überschrieben worden ist?


    ... dass das Programm beim Start schon geladen ist.

    Wie machst Du das, "... dass das Programm beim Start schon geladen ist." ?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Schon etwas länger her.

    Glaube das ging so:

    Code
    vim  /etc/init/program.conf
    Code
    start on runlevel [2345]
    stop on runlevel [^2345]
    
    
    chdir /home/pi/programs
    exec /home/pi/programs/startprogram

    Einmal editiert, zuletzt von Cool_pi (25. März 2015 um 14:04)

  • Code
    exec /home/pi/programs/startprogram

    "program.sh" ist ja nicht "startprogram". Gibt es einen Zusammenhang zwischen diesen beiden Dateien?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample


  • Die Datei mit der Endung .out kann man nicht mehr lesen.

    Wird eine binär-Datei sein. Hast Du diese "program.out"-Datei kompiliert? Wenn ja, dann wirst Du ja noch den source code haben, oder?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Zitat


    Gibt es so was wie Chronik?


    Mit

    Code
    history


    kannst du relativ weit zurück schauen. Eventuell kann folgendes Aufschluss bringen:

    Code
    history | grep program
  • Also den Code habe ich zwei mal kompoliert, einmal mit.out und einmal als program.

    Mit vim aufrufen ist nichts drin.

    Also habe die history angeschaut und mir ist folgendes aufgefallen

    Code
    1908  gcc -o program.c  program

    Eigentlich sollte es sorum kompiliert werden

    Code
    1908  gcc  program.c  - o program

    Hat das was mit dem Verschwinden des Sources zu tun?

    Einmal editiert, zuletzt von Cool_pi (25. März 2015 um 14:49)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!