Neue Antwort schreiben 
 
Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Der Code-Schnippsel-Thread
SnGtKs Offline
DEXTER

Beiträge: 1.616
Registriert seit: Jul 2008
Beitrag #11
Der Code-Schnippsel-Thread
DosAmp schrieb:  Das geht kürzer !_!
Direkter Shutdown aus DOS?? - Windows 3.1x Support Forum

ich weiss ;) aber warum einfach wenns auch schwer geht
denn mit einem
Code:
ECHO G=FFFF:0000 | debug
kann man lange noch kein eindruck schinden ;)

aso p.s. hab noch was gefunden
Code:
@ECHO E 0040:0072 34 12 >%temp%.\reboot.dat
@ECHO G=FFFF:0000 >>%temp%.\reboot.dat
@DEBUG.exe <%temp%.\reboot.dat >nul

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
11.04.2010 18:24
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
gandro Offline
Quälgeist

Beiträge: 8.951
Registriert seit: Jul 2008
Beitrag #12
Der Code-Schnippsel-Thread
Nichts spektatuläres, aber für spätere Verwendung hier mal zwischengespeichert. Ein Lua-Pattern für ein JS-ähnliches OOP-System mit Objektinstanzierung.

Code:
Point = {
    x = 0,
    y = 0
}

-- eine Methode für Operationen auf der Point-Table
function Point:moveBy(x, y)
    self.x = self.x + x
    self.y = self.y + y
end

function Point.create(x, y)
    -- "privater" Objektmember, auf den nicht von aussen zugegriffen werden kann
    local name = "Unnamed"

    -- neue Table mit den Koordinaten erzeugen
    local new = {
        x = x,
        y = y,

        setName = function(n)
            name = n
        end,
        getName = function()
            return name
        end
    }

    -- Metatable mit der Point-Table als Fallback-Index setzen
    setmetatable(new, {
        __index = Point,
        __tostring = function (p)
            return "[".. p.x ..", ".. p.y .."]"
        end
    })

    -- neue Table zurückgeben
    return new
end

-- obige Methoden aufrufen
P = Point.create(23, 42)
Q = Point.create(5, -4)

Q.setName("Test")
print(P.getName()) -- Unnamed
print(Q.getName()) -- Test

P:moveBy(-3, -2)

print(P) -- führt __tostring in der Metatable aus
17.04.2010 17:07
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
julben Offline
Erfahrener Benutzer

Beiträge: 2.327
Registriert seit: Jul 2008
Beitrag #13
Der Code-Schnippsel-Thread
Script, das mir die Arbeit beim Wechseln meines Wallpapers abnimmt.

Code:
#! /bin/bash
mv wallpaper.png wallpaper.png.bak
convert $1 -resize 1400x1050^ \
    -gravity center -extent 1400x1050 wallpaper.png
pkill feh
feh --bg-scale /home/julian/Desktop/wallpaper.png &
17.04.2010 23:59
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Blue-Fox Offline
nothing to see here

Beiträge: 2.758
Registriert seit: Jul 2008
Beitrag #14
Der Code-Schnippsel-Thread
Ein Skript, welches bei booten ein Wallpaper auswählt:
Code:
#! /bin/bash
cd ~/Bilder/Wallpaper
eval "FILES=( $(ls -Q *.jpg) )"
INDEX=$(expr $RANDOM % ${#FILES[@]} )
feh --bg-center ${FILES[$INDEX]}

THX @gandro.
30.04.2010 20:30
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DosAmp Offline
Anderes Zeigegerät

Beiträge: 12.219
Registriert seit: Jul 2008
Beitrag #15
Der Code-Schnippsel-Thread
Code:
#!/bin/bash
# 'true' kann man natürlich durch Abbruchbedingung ersetzen
# z. B. [[ ! -f /var/run/stoprecording ]]
while true; do
        gst-launch-0.10 -q v4l2src num-buffers=1 ! pngenc ! filesink location=webcam.png &>/dev/null
        convert webcam.png -resize 320x240 -quality 75 webcam.jpg
        rm webcam.png
        sleep 10s
done
Ein kleines Skript, um von einer Webcam regelmäßig Schnappschüsse zu machen, wenn ihr Ausgabeformat wie das meiner alten Kamera nur von gstreamer unterstützt wird. gst-launch-0.10 ggf. durch die aktuelle Version von gstreamer ersetzen, falls diese sich mal irgendwann ändert. Imagemagick kann man je nach Geschmack natürlich austauschen. ;)

CCITTグループ4またはZIP圧縮のモノクロ300dpiで最高の再現性
03.05.2010 19:05
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DosAmp Offline
Anderes Zeigegerät

Beiträge: 12.219
Registriert seit: Jul 2008
Beitrag #16
Der Code-Schnippsel-Thread
Code:
#!/bin/bash

. /etc/rc.conf
. /etc/rc.d/functions
. /etc/conf.d/siginfo-ng

case "$1" in
  start)
    stat_busy "Starting Siginfo Client"
    sudo -u nobody /usr/bin/siginfo-ng -d -i $INTERVAL -p /tmp/.siginfo-ng.pid &>/dev/null
    if [ $? -gt 0 ]; then
      stat_fail
    else
      add_daemon siginfo-ng
      stat_done
    fi
    ;;
  stop)
    stat_busy "Stopping Siginfo Client"
    /usr/bin/siginfo-ng -k -p /tmp/.siginfo-ng.pid
    if [ $? -gt 0 ]; then
      stat_fail
    else
      rm_daemon siginfo-ng
      stat_done
    fi
    ;;
  restart)
    $0 stop
    sleep 1
    $0 start
    ;;
  *)
    echo "usage: $0 {start|stop|restart}"
esac
Mein Startskript für siginfo-ng… nicht schön, verwendet nicht /var/run fürs Pidfile (weils [noch] keine Möglichkeit hat, Root-Rechte nach dem Start zu verwerfen) und braucht sudo (weil su mit oder ohne Login-Shell erst nach dem Passwort für nobody fragt), funktioniert aber. :D

CCITTグループ4またはZIP圧縮のモノクロ300dpiで最高の再現性
08.05.2010 13:49
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Blue-Fox Offline
nothing to see here

Beiträge: 2.758
Registriert seit: Jul 2008
Beitrag #17
Der Code-Schnippsel-Thread
Muss man dann nicht ein Passwort beim Start eingeben? öö
Wegen sudo.
08.05.2010 13:58
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
TAL Offline
機関車

Beiträge: 6.342
Registriert seit: Jul 2008
Beitrag #18
Der Code-Schnippsel-Thread
Man kann ja in der sudoers Datei sagen das man keines eingeben will. ;) aka NOPASSWD

08.05.2010 14:01
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
LukeGee Offline
Misanthrop

Beiträge: 2.021
Registriert seit: Dec 2009
Beitrag #19
Der Code-Schnippsel-Thread
Dämliches Script, um aus MP3s eine Audio-CD zu brennen:

Code:
#!/bin/bash

version="0.1"

cdrecord="/usr/bin/cdrecord"
cdrecord_additional_options="-v -pad"
mpg123="/usr/bin/mpg123"
mpg123_additional_options="-q"
tmpdir=$(mktemp -d /tmp/audiocd.XXX)

color_green="\e[1;32m"
color_red="\e[1;31m"
color_white="\e[1;39m"
color_plain="\e[0m"

function log()
{
    echo -e "${color_green}::${color_plain} $1"

    if [ $logging -eq 1 ]; then
        echo $1 >> $logfile
    fi
}

function log_error()
{
    echo -e "${color_red}::${color_plain} $1"

    if [ $logging -eq 1 ]; then
        echo "Error: $1" >> $logfile
    fi
}

function ask()
{
    read answer
    case "$answer" in
        y|Y)
            cont=1
        ;;
        n|N)
            cont=0
        ;;
        *)
            cont=0
        ;;
    esac
}

function check_files()
{
    audio_files=()

    for file in "$@"; do
        # Workaround to skip the getopt options
        if [ "${file:0:1}" == "-" ] ; then
            continue
        fi

        is_audio=$(file -i "$file" | egrep -q 'audio\/.*;' ; echo $?)
        if [ $is_audio -eq 0 ]; then
            audio_files=("${audio_files[@]}" "$file")
        fi
    done
}

function decode_files()
{
    for file in "${audio_files[@]}"; do
        dst_file="${tmpdir}/$(basename "$file").wav"
        log "Decoding $file to $dst_file..."
        $mpg123 $mpg123_additional_options -w "$dst_file" "$file"
    done
}

function burn_files()
{
    $cdrecord $cdrecord_additional_options -audio ${tmpdir}/* 2>&1 | tee -a $logfile
}

function cleanup()
{
    log "Cleaning (removing $tmpdir)"
    rm -rf $tmpdir
    log "Cleaning done"
}

function start_all()
{
    log "Start the decoding..."

    decode_files

    log "Decoding done"
    log "Start burning..."

    if [ $noconfirm -eq 1 ]; then
        burn_files
    else
        log "Start burning the files in ${tmpdir}?"
        ask
        if [ $cont -eq 1 ]; then
            burn_files
        else
            cleanup
            log_error "Aborted by user"
            exit 1
        fi
    fi

    cleanup
    log "All done"
}

function show_help()
{
        echo "$0 - stupid script to burn audio cds from mp3 files"
        echo "Options"
        echo "  -n      Do not ask for burning the decoded files"
        echo "  -l      Enable logging (to burn-audio-cd.log)"
        echo "  -h      Show this help"
        echo "  -v      Show version info"
        echo
        exit 0
}

function show_version()
{
        echo -e "${color_white}$0 v${version}${color_plain} - stupid script to burn audio cds from mp3 files"
        echo
        exit 0
}

noconfirm=0
logging=0
logfile="burn-audio-cd.log"

trap "cleanup ; exit 0" SIGINT

while getopts "nlhv" opt; do
    case $opt in
        n)
            noconfirm=1
        ;;
        l)
            logging=1
        ;;
        h)
            show_help
        ;;
        v)
            show_version
        ;;
    esac
done

check_files "$@"
start_all

Kann sein, dass es buggy ist, habs nur einmal grade eben getestet. Ging aber.
08.05.2010 15:45
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DosAmp Offline
Anderes Zeigegerät

Beiträge: 12.219
Registriert seit: Jul 2008
Beitrag #20
Der Code-Schnippsel-Thread
Blue-Fox schrieb:  Muss man dann nicht ein Passwort beim Start eingeben?
Nö, das Skript wird ja beim Start als root gestartet und root darf normalerweise alles ohne Passwort im Namen eines Benutzers machen, wie es auch in der Standard-sudoers festgelegt ist. Bloß das übliche su stört sich halt daran, dass die vorgegebenen Systemkonten wie daemon oder nobody gesperrt sind und man deswegen keine Shell für diese Accounts starten kann. Wer ein extra Benutzeraccount für Siginfo anlegt und nicht sudo benutzen will, der hat halt dieser Probleme nicht und kann auch
Code:
su -c "/usr/bin/siginfo-ng -d -i $INTERVAL -p /tmp/.siginfo-ng.pid" siginfo &>/dev/null
oder ähnlich schreiben.

CCITTグループ4またはZIP圧縮のモノクロ300dpiで最高の再現性
08.05.2010 16:17
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Neue Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste