Der Code-Schnippsel-Thread

  • Danke für den Link, aber ich bau sowas lieber selber :D
    Man kann sed -i "s/${ALTERNAME}/${NEUERNAME}/g" $i ja einfach durch sed -i "s/${ALTERNAME} /${NEUERNAME} /g" $i ersetzen, dann hat man das Problem mit den Namensteilen elegant gelöst.


  • Man kann sed -i "s/${ALTERNAME}/${NEUERNAME}/g" $i ja einfach durch sed -i "s/${ALTERNAME} /${NEUERNAME} /g" $i ersetzen, dann hat man das Problem mit den Namensteilen elegant gelöst.

    Das Trennzeichen ist doch ein Doppelpunkt, kein Leerzeichen. Zwar hast du damit dann die Benutzer-Datenbank einigermaßen sauber abgedeckt, aber dafür immer noch nicht /etc/group und /etc/gshadow, wo Benutzernamen am Ende als Teil einer kommaseparierten Liste aufgeführt werden.


  • So mein Code sieht nun so aus:

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


    So. Ich hab grade n leichtes Problem mit meinem Script. Es liegt unverändert unter /usr/bin, allerdings bekomme Ich jetzt folgende Fehlermeldung:

    Code
    tobias@darkstar:~$ Backup.sh 
    /usr/bin/Backup.sh: Zeile 28: [: Zu viele Argumente.
    tobias@darkstar:~$

    Zeile 28 im Script:

    Code
    if [ $RSYNC1_RET -eq 0 -a $RSYNC2_RET -eq 0 ]; then

    Ich blicke grade net durch. Unter Squeeze lief das Script einwandfrei.


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


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


  • Ich würde erst mal schauen, ob das Konstrukt ${PIPESTATUS[0]} noch funktioniert und $RSYNC1_RET und $RSYNC2_RET Werte enthalten.

    Es war ein Tippfehler. hatte statt PIPESTATUS PIPESTAT.

    Argh. Jetzt tut alles :)


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


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

  • Habe gerade eines meiner ersten Perl-Scripte wieder entdeckt. Der v6-Teil ist nie fertig geworden :D


    Es gab sogar eine Version mit GTK-GUI:

  • Meine ersten PHP-Versuche.


    PHP-Script zum erstellen der Datenbank.


    PHP-Script zum erstellen der Tabelle.


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


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

  • Nichts wildes, aber eventuell interessant:
    #!/bin/bashps | grep oscam | grep -v grep | grep -v bash >/dev/null || oscam_start.sh

    Prüfen ob ein Prozess läuft. Wenn nicht, ein Script starten. Habe ich mir grade auf dem Satreceiver zusammengefriemelt.

    BTW: Warum ich bash rausfilter? Weil das Script auch oscam im Namen hat. Wenn es mittels ./ aufgerufen wird, ist das zu vernachlässigen, wenn man es jedoch an bash übergibt, dann ist das zu beachten. Da es keinen stört, lasse ichs drin. Wenn das Script anders heißt, kann man den Teil natürlich weglassen. Das >/dev/null sollte aber erhalten bleiben, damit es im Falle eines laufenden Prozesses nicht die Shell zuspammt.


    Und noch was. Meine /etc/vim/vimrc.local:

    Code
    set showmatch
    set number
    set autoindent
    filetype plugin indent on
    set mouse=a
    set bg=dark
    • Hervorhebung übereinstimmender Klammern
    • Zeilennummern
    • Mausunterstützung
    • Passende Highlighting-Farben für dunklen Terminalhintergrund
  • Langeweile

    Bash
    #!/bin/bash
    ping -c1 10.18.1.1
    if [ $? -eq 0 ]; then
     mount -t nfs 10.18.1.1:/data/save /mnt/Server -o wsize=16384,rsize=16384
    else
     echo spacecube ist nicht erreichbar
     exit 0
    fi


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


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

  • Wenn nfs in der fstab eingetragen ist, guckt der Client periodisch im Hintegrrund automatisch ob das Share da ist. Sobald er es erreichen kann, mountet er es automatisch.
    Aber nette Idee, die Rückgabewerte von ping dafür zu nutzen. Kannst ja die Ausgabe von ping noch auf /dev/null umleiten, um die Ausgabe von selbigem weg zu bekommen.


  • Wenn nfs in der fstab eingetragen ist, guckt der Client periodisch im Hintegrrund automatisch ob das Share da ist. Sobald er es erreichen kann, mountet er es automatisch.
    Aber nette Idee, die Rückgabewerte von ping dafür zu nutzen. Kannst ja die Ausgabe von ping noch auf /dev/null umleiten, um die Ausgabe von selbigem weg zu bekommen.

    Wie müsste Ich das denn realisieren?


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


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

  • Wie müsste Ich das denn realisieren?

    Einfach ein > /dev/null hinter den ping. Das leitet dann die stdout-Ausgaben auf /dev/null weiter. Bin mir grad nicht sicher, ob ping im Falle der Nichterreichbarkeit auf stderr auch was ausgibt. Wenn ja, ist aber auch das leicht umleitbar.

    Bash
    #!/bin/bash
    ping -c1 10.18.1.1 > /dev/null
    if [ $? -eq 0 ]; then
    	mount -t nfs 10.18.1.1:/data/save /mnt/Server -o wsize=16384,rsize=16384
    else
    	echo spacecube ist nicht erreichbar
    	exit 0
    fi
  • Einfach ein > /dev/null hinter den ping. Das leitet dann die stdout-Ausgaben auf /dev/null weiter. Bin mir grad nicht sicher, ob ping im Falle der Nichterreichbarkeit auf stderr auch was ausgibt. Wenn ja, ist aber auch das leicht umleitbar.

    Bash
    #!/bin/bash
    ping -c1 10.18.1.1 > /dev/null
    if [ $? -eq 0 ]; then
    	mount -t nfs 10.18.1.1:/data/save /mnt/Server -o wsize=16384,rsize=16384
    else
    	echo spacecube ist nicht erreichbar
    	exit 0
    fi

    Merci b1. Das Skript kann Ich heute Abend ja dann anpassen.


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


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

  • hmm dieses Programm wandelt eine Dezimalzahl in Hex Oktal und Binär

    okay es ist buggy ... wenn eine zahl grösser wie 255 eingegeben wird ist die ausgabe falsch

    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


  • Das ist natürlich die einfachste Lösung.

  • Code
    0a1
    > #!/usr/bin/tcc -run
    16,17c17,18
    <         printf("Ihre Eingabe Oktal %04o \n",zahl);
    <         printf("Ihre Eingabe Binär: ");
    ---
    >         printf("Ihre Eingabe Oktal: %04o \n",zahl);
    >         printf("Ihre Eingabe Binär: 0b");


    Cool wär ja noch, wenn man die führenden Nullen bei Binär abschneiden könnte oder auf Bytes/Wörter/etc. „runden“ könnte (analog bei den andern).

    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“

  • Bei diesem kleinen Programm handelt es sich um eine Zapfenrechnung die volltautomatisch ausgeführt wird. Einfach Daten eingeben und los gehts.
    Testgerät: Sharp PC1500A

    10 Print"Zapfenrechner"
    15 Input"Tempo?";T < Regelt das Anzeigetempo
    20 WAIT T: INPUT"STARTZAHL?";ST
    25 INPUT"REIHEN?";R
    30 BEEP 1
    35 FOR A=2 TO R
    40 PRINT ST;"*";A
    45 ST=ST*A
    50 NEXT A
    55 BEEP 1
    60 FOR B=2 TO R
    65 PRINT ST;"/";B
    70 ST=ST/B
    75 NEXT B
    80 BEEP 1
    85 ST=INT(ST) > für den Fall das sich eine Kommastelle einschleicht, kann bei zu hoher Einstellung durchaus passieren
    90 PRINT"ERGEBNIS";ST
    95 WAIT:PRINT
    100 INPUT"NOCHMAL?";N$
    105 IF N$="J" THEN GOTO 20
    110 IFN$="N" THEN GOTO 115
    115 PRINT"BEENDET"
    120 END

    PC: Intel Core i7-14700K, MSI MAG Z790 TOMAHAWK WIFI, be quiet! Pure Base 500 Weiß, 32GB 2x16GB DDR5-5600 RAM Corsair Vengeance, MSI GeForce RTX 4070 Super 12GB Gaming X Slim, Samsung 990 PRO NVMe SSD 2 TB M.2 PCIe 4.0, Windows 11/Ubuntu 24.10
    Notebook: Lenovo IdeaPad 5 CB 14ITL 82M8002AGE, Chromebook

    Einmal editiert, zuletzt von Tarvenik (20. Juni 2013 um 18:12)

  • Ein Tool zum Steuern von netctl-auto@.service: https://github.com/gandro/netctl-auto-cli

    Das eigentliche Code-Schnippsel ist mit 200 Zeilen etwas gross für den Beitrag.

  • Kleines PowerShell-Skript zum Ver- und Entschlüsseln mit GnuPG.

    Ggf. erweitere ich das noch so, dass es mir bei Verzeichnissen eine temporäre Zip-Datei anlegt und diese verschlüsselt.



    EDIT: Habe ein Gist draus gemacht.

Jetzt mitmachen!

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