Der Code-Schnippsel-Thread

  • Dummerweise benutzt Opera weder ein übliches Datenbank-Format wie SQLite noch besitzt es standardmäßig über eine Funktion zum Export von Cookies. Seine Datenstruktur stammt noch aus Delphi-Win16-Tagen. Ohne einen externen Konverter (oder einen anderen Browser, der Operas Profile importieren kann :trollface: ) geht da nichts.


  • Spoiler anzeigen


    Etwas verbessertes Backup-Skript. Allerdings kommt er nicht mit $TARGET2 klar. Bei Ausführung bekomme ich diesen Fehler

    Spoiler anzeigen
    Code
    rsync: link_stat "/mnt/LAN/Sicherung" failed: No such file or directory (2)
    rsync: mkdir "/home/tobias/Doku/Monatsbackups/Backup-12-2012" failed: No such file or directory (2)
    rsync error: error in file IO (code 11) at main.c(595) [Receiver=3.0.7]
    rsync: connection unexpectedly closed (9 bytes received so far) [sender]
    rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

    Einmal editiert, zuletzt von tk1908 (17. Dezember 2012 um 21:13)

  • So mein Code hat jetzt erstmal nen Workaround, bis ich ne Lösung für mein Problem habe. (Siehe voriger Beitrag)

    Spoiler anzeigen

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

    Einmal editiert, zuletzt von tk1908 (17. Dezember 2012 um 21:14)

  • So jetzt vorerst endgültige Fassung für mein Backup-Skript.

    Wenn jemand ne Idee hat, wie ich mein Log-Problem löse (lokale Mail bein Erfolg oder Misserfolg des Backups.), der möge sie mir bitte mitteilen.)


    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

  • Mal n bisschen mit funktionen gespielt.

    Habe das Skript allerdings noch nicht testen können.

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

    Einmal editiert, zuletzt von tk1908 (20. Dezember 2012 um 11:55)


  • Wird ja inzwischen richtig schön das Script :)
    Ich kann es heute Abend mal testen, wenn du möchtest.

    OK. Mein Problem ist halt, dass ich sowohl beim Fehlschlagen, als auch beim erfolgreichen Durchlauf ne (lokale) Mail bekommen soll, was mit dem vorigen Skript nicht machbar war. Momentan werden die Funktion log() scheinbar mehrere Mails gesendet. Das muss ich noch fixen. Mal schauen wie ich das anstelle.

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

  • Hat einer von euch ne Idee, wie ich die Log-Funktion zum laufen bekomme?

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

  • Mal ganz davon abgesehen davon, die Existenz von VCS wie z.B. Git ist dir bekannt?

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“


  • Hat einer von euch ne Idee, wie ich die Log-Funktion zum laufen bekomme?

    Du musst deinen Code noch mal umschreiben. So erfasst $EXIT nur den Rückgabewert von date bzw. sogar die Wertzuweisung an $TMPLOG, die beide natürlich immer erfolgreich ablaufen. Und selbst wenn du den Code hinter die letzte Backup-Zeile schiebst, wird immer noch der Rückgabewert von tee anstatt rsync erfasst.

    Bash (#!/bin/bash) bietet dir dafür das Array PIPESTATUS an, das dir ermöglicht, auf alle einzelnen Rückgabewerte der Befehle in einer Pipe zuzugreifen.

    Selbst dann bekommst du aber eine Erfolgsmeldung, wenn dein erstes Backup fehlschlägt und das zweite nicht. Du musst beide Rückgabewerte in Betracht ziehen:

    Code
    rsync -avu $SOURCE $TARGET |tee -a $LOG >> $TMPLOG; RSYNC1_RET=${PIPESTATUS[0]}
    rsync -avu $SOURCE /mnt/LAN/Sicherung\ Doku/Monatsbackups/$FULLNAME/ |tee -a $LOG >> $TMPLOG; RSYNC2_RET=${PIPESTATUS[0]}
    
    
    if [ $RSYNC1_RET -eq 0 -a $RSYNC2_RET -eq 0 ]; then ...; else ...; fi
  • Du musst deinen Code noch mal umschreiben. So erfasst $EXIT nur den Rückgabewert von date bzw. sogar die Wertzuweisung an $TMPLOG, die beide natürlich immer erfolgreich ablaufen. Und selbst wenn du den Code hinter die letzte Backup-Zeile schiebst, wird immer noch der Rückgabewert von tee anstatt rsync erfasst.

    Bash (#!/bin/bash) bietet dir dafür das Array PIPESTATUS an, das dir ermöglicht, auf alle einzelnen Rückgabewerte der Befehle in einer Pipe zuzugreifen.

    Selbst dann bekommst du aber eine Erfolgsmeldung, wenn dein erstes Backup fehlschlägt und das zweite nicht. Du musst beide Rückgabewerte in Betracht ziehen:

    Code
    rsync -avu $SOURCE $TARGET |tee -a $LOG >> $TMPLOG; RSYNC1_RET=${PIPESTATUS[0]}
    rsync -avu $SOURCE /mnt/LAN/Sicherung\ Doku/Monatsbackups/$FULLNAME/ |tee -a $LOG >> $TMPLOG; RSYNC2_RET=${PIPESTATUS[0]}
    
    
    if [ $RSYNC1_RET -eq 0 -a $RSYNC2_RET -eq 0 ]; then ...; else ...; fi


    Merci. Konnte deinen Code erfolgreich implementieren. Danke :)

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

  • So mein Code sieht nun so aus:

    Vielen Dank noch mal an DosAmp, der mch auf die Lösung gebracht hat.

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.

    Einmal editiert, zuletzt von tk1908 (29. Dezember 2012 um 11:49)

  • Weil ich auf die Schnelle keinen Download für Window Hidie mehr finden konnte, habe ich aus meiner C-Programmiersucht heraus ein kleines Tool geschrieben, das das manuelle Ein- und Ausblenden von Fenstern unter Windows erlaubt. :D

    Code
    C>windowtoggle /?
    Interactive tool for toggling a window's visibility.
    
    
    windowtoggle [/V]
    
    
      /V         Only show visible windows.

    Ich habe auch eine ANSI-Version gebaut, aber noch funktioniert diese nicht ganz zufriedenstellend unter Windows 9x. ;)

    Gegebenfalls bastele ich da noch eine minimale GUI mit Visual C++ rundherum.

  • hust ... hab gerade mal ein kleines Feuerwerk mit debug für DOS gebastelt ;)

    und in eine ausführbare datei bekommt ihr es so ... kopiert alle zeilen des codes in eine txt datei, abspeichern und unter dos dann das hier eingeben

    Code
    debug <dateiname.txt

    schon habt ihr eine feuer.com und schönes buntes geflacker auf dem bildschirm ...

    Have fun

    X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

    Früh aufstehen ist der erste Schritt in die falsche Richtung.

    Uri Geller verbiegt Löffel. Na und, Maggi macht Knoten rein!

    Ich bin im WH Forum seit dem 11.05.2003 ... wow


  • Achtung, Augenkrebs v.a. an der vierten LED.

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“


  • Ich habe auch eine ANSI-Version gebaut, aber noch funktioniert diese nicht ganz zufriedenstellend unter Windows 9x. ;)

    Läuft jetzt wie erwartet, auch unter WinNT. gcc/MinGW macht im Gegensatz zum Logiciels/informatique-C-Compiler mit scanf("%d\n", &integer) nicht ganz das, was man erst erwartet.

  • Die Diskussion um POTS etc. hat mich dazu gebracht, mein Gehör mal zu testen. Das Programm funktioniert zwar willkürlich nicht, aber ich vermute hier fast schon ein Bug in der Hardware.
    https://gist.github.com/4504149

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“

Jetzt mitmachen!

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