NEWS


  • Moin,
    habe leider nicht wirklich einen passenden Titel gefunden.
    Kurz gesagt, ich möchte meine letzte Aufnahme in einen Ordner mit Telegram versenden. Wie das Senden mit Telegram funktioniert weiß ich. Mir geht es nun darum, die letzte Aufnahme zu identifizieren und den Dateinamen zu bekommen.

    Ich speichere meine Videos meiner Überwachungskamera mit MotionEye in einen Ordner mit Datum und Uhrzeit als Name.

    /motioneye/camera/2019-09-30_17-15-35.mp4
    /motioneye/camera/2019-09-30_17-20-01.mp4
    /motioneye/camera/2019-09-30_17-33-49.mp4
    ...
    

    Ich möchte nun den Namen der letzten Datei in diesen Ordner herausfinden. Ich habe schon überlegt ein extra Bash Skript zu schreiben und mir den Dateinamen dann z.B. in einen Datenpunkt zu schreiben. Würde es aber schöner finden, dass direkt mit Blockly oder als JavaScript Funktion in Blockly einbauen zu können.
    Da ich leider kein JS kann hoffe ich das mir jemand weiter helfen kann.


  • So müsste das eigentlich funktionieren:

    lfw.PNG

    <block xmlns="http://www.w3.org/1999/xhtml" type="exec" id="Eu=H@X}Kfl%J?PfVmus|" x="-212" y="113">
      <mutation with_statement="true"></mutation>
      <field name="WITH_STATEMENT">TRUE</field>
      <field name="LOG">log</field>
      <value name="COMMAND">
        <shadow type="text" id="lP1U.!KJk|(.Q1te(#o`">
          <field name="TEXT">ls /motioneye/camera/ -Art | tail -n 1</field>
        </shadow>
      </value>
      <statement name="STATEMENT">
        <block type="debug" id="0pa{7q$$]X=63bq`hGdt">
          <field name="Severity">log</field>
          <value name="TEXT">
            <shadow type="text" id="n|/o)@)D0*}(%ar_H9;^">
              <field name="TEXT"></field>
            </shadow>
            <block type="variables_get" id="q[^Q`|m3pIt%jzAEI}qz">
              <field name="VAR" id="=p=yxmg}GLf@8PKVjkuf" variabletype="">result</field>
            </block>
          </value>
        </block>
      </statement>
    </block>
    

    Den Ordnerpfad noch auf den kompletten Pfad anpassen

    result kannst du dann per Telegramm mitsenden.

    Gibt aber halt nur die letzte Datei/Ordner aus der erstellt/modifziert wurde, auch wenn es unwahrscheinlich ist könnte es passieren das die Ausgabe nicht zu der Aufnahme passt die du dir per Telegramm zugesendet hast wenn zwischen der Code Abarbeitung eine neuere Datei erstellt worden ist.

    Grüße
    TeNNo2k5


  • @TeNNo2k5
    Vielen Dank. Funktioniert so weit.
    Kannst du mir die Argumente erklären? Hab bei Google leider nichts gefunden. Oder hast du eine Seite wo man sich die „erlesen“ kann?
    Geht auch eine Auflistung aller files?


  • @TeNNo2k5

    coole art das neuste file zu finden - muss ich mir merken


  • @el_malto sagte in Dateinamen in Ordner herausfinden und anzeigen:

    @TeNNo2k5
    Vielen Dank. Funktioniert so weit.
    Kannst du mir die Argumente erklären? Hab bei Google leider nichts gefunden. Oder hast du eine Seite wo man sich die „erlesen“ kann?
    Geht auch eine Auflistung aller files?

    Die Befehlskombination musste ich auch selber googeln, generell gibt der Befehl ls (list directory) den Inhalt eines Ordners aus, das -Art sind Argumente die Ausgabe anpassen/sortieren. Mit dem gepipten Befehl tail -n 1 wird die Ausgabe auf eins begrenzt, also mit tail -n 3 würden die letzten drei geänderten Dateien ausgegeben.

    Weitere Infos:

    http://man7.org/linux/man-pages/man1/ls.1.html
    http://man7.org/linux/man-pages/man1/tail.1.html

Suggested Topics

1.8k
Online

38.4k
Users

43.8k
Topics

612.3k
Posts