Der Code-Schnippsel-Thread
-
-
-
kkkcheck.bat 1.1:
Code
Alles anzeigen@echo off if exist kkk.exe goto vir if not exist kkk.exe goto novir :vir color cf echo ACHTUNG!!! echo. echo DER VIRUS "KKK.EXE" BEFINDET SICH AUF IHREM COMPUTER! echo. echo Soll versucht werden, ihn zu l”schen? choice /c:jn if errorlevel 2 goto omega if errorlevel 1 goto delvir :novir color a1 echo Der Virus "KKK.EXE" befindet sich nicht in diesem Verzeichnis! echo. echo ES IST NICHT AUSZUSCHLIESSEN, DASS SICH "KKK.EXE" echo IN EINEM ANDEREN VERZEICHNIS BEFINDET, echo ODER DASS SICH EIN ANDERER VIRUS AUF IHREM COMPUTER BEFINDET! echo Drcken Sie eine beliebige Taste, um das Programm zu schlieáen... pause>nul color goto eof :delvir attrib kkk.exe -r -a -s -h -i del /f kkk.exe>nul if exist autorun.inf ( attrib autorun.inf -r -a -s -h -i del /f autorun.inf>nul ) if not exist kkk.exe ( echo Der Virus "KKK.EXE" wurde erfolgreich gel”scht! echo ES IST NICHT AUSZUSCHLIESSEN, DASS SICH "KKK.EXE" NOCH echo IN EINEM ANDEREN VERZEICHNIS BEFINDET, echo ODER DASS SICH EIN ANDERER VIRUS AUF IHREM COMPUTER BEFINDET! ) else ( echo ACHTUNG!!! echo DER VIRUS "KKK.EXE" WURDE *NICHT* AUS DIESEM VERZEICHNIS echo GEL™SCHT! ™FFNEN SIE *AUF KEINEN FALL* DIE DATEI "KKK.EXE"!!! echo. echo Installieren Sie am besten sofort einen guten Virenscanner, echo zum Beispiel avast! Antivirus, www.avast.com. ) :omega color echo Drcken Sie eine beliebige Taste, um das Programm zu schlieáen... pause>nul :eof
Statt del /weisnichmehr wird das jetzt einfach mit attrib gemacht. -
Code
__wdecode() { echo -e $(sed 's/_/ /g; s/%/\\x/g'); } wikilinks() { wget -qO- [noparse]http://de.wikipedia.org/wiki/$1[/noparse] |\ grep '"/wiki/' | sed 's/.*"\/wiki\/\([^ ]*\)".*/\1/' | grep -v -e ':' -e '$1' |\ sort -u | while read l; do __wdecode <<<$l; done; }
Alle Artikel ausgeben, auf die ein Wikipedia-Artikel verlinkt ist, z. B.
-
Primfaktoren einer Zahl rausfinden:
Perl
Alles anzeigen#!/usr/bin/perl -w use strict; my $arg = undef; if ( defined($ARGV[0]) ) { $arg = $ARGV[0]; } else { die("Missing arg!"); } sub check_prime { my $n = shift; for ( my $i = 2; $i <= sqrt($n); $i++) { if ( ($n % $i) == 0) { return 0; } } return 1; } my @factors = (); my $n = $arg; my $i = 2; while ( $i <= $n ) { if ( check_prime($i) ) { while ( ($n % $i) == 0 ) { $n = $n / $i; push @factors, $i; } } $i++; } print "$arg = " . join(' * ', @factors) . "\n";
-
Code
Alles anzeigenPROGRAM:WUERFEL :Lbl A #:A :ClrHome #cls :Disp randInt(1,6) #echo <Ganzzahlige zufallszahl zwischen 1 und 6> :Disp "Weiter: <2" :Disp "Stop: (GrößerGleich)2" :Prompt A #Fragt nach dem Wert der Variable A :If A(GrößerGleich)2 :Then :Goto O :Else :Goto A :Lbl O #:O; angelehnt an Omega
Programmiert auf einem TI-84 Plus - TI-84 Plus – Wikipedia TI-Basic – Wikipedia
Der Kommentar ist entweder eine Erklärung oder der entsprechende DOS-Befehl in Batchdateien. -
WTF ist bitteschön der Sinn dieses Programms? o_O
Echte BASIC-Oldfags schreiben im Übrigen int (6*rand+1). -
Sieht man doch am Namen!
Und in Excel mach ichs auch so. -
Zitat von thosch97
Sieht man doch am Namen!
Oh sry, war ein bisschen blind … ähnliche Programme haben wir immer WUERFELN genannt, dachte das soll geometrische Berechnungen ausführen.Ein Tipp: Eine einfache Tasten-Warteschleife wie
ist einiges eleganter, du musst dafür nur 105 durch den Tastencode für die Enter-Taste (oder welche Taste auch immer) beim TI-84 ersetzen. -
Gut, wusst ich nicht. Wo krieg ich die KCodes her?
-
-
Mini-Skript um meine syslog-Ausgabe einzufärben
Perl
Alles anzeigen#!/usr/bin/perl -w use strict; use constant BLANK => "\e[0m"; use constant RED => "\e[1;31m"; use constant GREEN => "\e[1;32m"; use constant YELLOW => "\e[1;33m"; use constant BLUE => "\e[1;34m"; use constant MAGENTA => "\e[1;35m"; use constant CYAN => "\e[1;36m"; use constant WHITE => "\e[1;37m"; my ($date, $time, $host, $process, $msg); while (<STDIN>) { if ( m/(\w{3}\s+\d{1,2})\s+(\d{2}:\d{2}:\d{2})\s+([\w\-\.]+)\s+([\w\d\s\-\.\[\]]+):\s+(.+)/ ) { $date = $1; $time = $2; $host = $3; $process = $4; $msg = $5; if ( m/warning|error|critical|corrupt|bad|exiting|alert/i ) { printf("%s%s %s%s %s%s %s%s: %s%s%s\n", WHITE, $date, CYAN, $time, BLUE, $host, YELLOW, $process, RED, $msg, BLANK); } else { printf("%s%s %s%s %s%s %s%s: %s%s%s\n", WHITE, $date, CYAN, $time, BLUE, $host, YELLOW, $process, WHITE, $msg, BLANK); } } }
-
-
Zitat von DosAmp
Die Bedienungsanleitung ist dein Freund (und niemand kann einen TI-Taschenrechner zu Beginn ernsthaft ohne solche programmieren).
[IMaGe]http://www.img-share.net/uploads/218getKey.jpg[/IMaGe]
Ich glaub, das Schema sollte leicht verständlich sein.Kurzanleitung
Trotzdem Danke!
EDIT: Gut, jetzt hab ich auch die richtige Bedienungsanleitung als PDF. Aber 715 Seiten sind schon heftig... -
So, WUERFEL v2.1
CodePROGRAM:WUERFEL :Lbl A :ClrHome :Disp randInt(1,6) :Disp "Weiter: ENTER" :Disp "Stop: CLEAR" :Repeat K≠0 :getKey→K :End :If K=105:Goto A
Jeder, der auch nur ein bisschen programmieren kann, wird wahrsceinlich sagen: "Hey, Moment mal! Man kann das doch auc h mit etwas anderem als CLEAR beenden!" Richtig. Sowas nennt sich Code einsparen. -
Beitrag von Spit (
3. Juli 2010 um 15:38 )Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar. -
Ist zwar ein wenig mehr, als ein Code-Schnipsel, aber egal.
Hab mal für mich ein Config-Deploy-and-Check Script geschrieben.
Aus dem ganz einfachen Grund, dass ich oft z.B. Testsysteme einrichte und ich da aber nicht auf meine Configfiles verzichten will. Ich hab ja meine Configfiles alle in einem Git-Repo, aber das ganze ist trotzden ziemlich lästig, weil ich jedes mal die ganzen Files an die richtige Stelle legen muss.
Man legt sich für das Skript eine Profil-Datei an (Beispiel anbei) wo man definiert, wo die Source-File liegt und wo die hinkommen soll. Das Skript liest das aus und kopiert die Dateien eben an die Stelle. Außerdem kann man damit eben Checken, ob noch alle Files up-to-date sind.
Die Profil-Dateien sind einfach ne Perl-Datenstruktur, weil ich mir damit dämliches parsen erspare und die auch nicht so wirklich umständlich sind zu editieren, sollte selbsterklärend sein.
Sehr sehr gut möglich, dass das Skript irgendwo Quirks und Bugs hat weil mir diese ganze Filepath-Friemelei schon wieder ziemlich auf den Senkel ging. Habs ein paar mal getestet, da gings soweit, aber ich bin mir ziemlich sicher, dass ich irgendwas irgendwo vergeigt hab :>
Es ist aber immerhin so klever, dass wenn man im Profil nur ein Verzeichnis angibt (wie in der Beispiel-Datei, z.B. '.vim' oder '.mutt') dass es das Verzeichnis nach Dateien durchsucht, diese kopiert und auch für jede einzelne nen Integritätscheck macht.
HF.
//EDIT: Hab mal ein Repo dafür angelegt.
http://github.com/lukasg/configDeploy -
Langeweile-Ultra-Thin-cat mit diet libc und libowfat.
/opt/diet/bin/diet gcc -Wall -Os -o mycat mycat.c -static -lowfat
lukas@q9400-arch:~ $ du -bh mycat
5.3K mycatC
Alles anzeigen#include <stdlib.h> #include <stdio.h> #include <fcntl.h> #include <buffer.h> #include <open.h> #define PROGRAM "mycat" #define VERSION "0.1" #define FD_STDIN 0 #define FD_STDOUT 1 void cat( const char *filename ) { int fd, len; char buf[BUFSIZ]; if ( *filename == '-' ) fd = FD_STDIN; else fd = open_read( filename ); while ( ( len = read( fd, buf, sizeof( buf ) ) ) > 0 ) { if ( write( FD_STDOUT, buf, len ) != len ) { buffer_puts( buffer_2, "Fatal: short write" ); buffer_putnlflush( buffer_2 ); exit( EXIT_FAILURE ); } } close( fd ); } int main( int argc, char *argv[] ) { int i; for ( i = 1; i < argc; i++ ) { if ( argv[i][0] == '-' && argv[i][1] != 0 ) { switch ( argv[i][1] ) { case 'h': buffer_puts( buffer_1, PROGRAM " [-hv] filename ..." ); buffer_putnlflush( buffer_1 ); return EXIT_SUCCESS; case 'v': buffer_puts( buffer_1, PROGRAM " version " VERSION ); buffer_putnlflush( buffer_1 ); return EXIT_SUCCESS; default: return EXIT_FAILURE; } } } for ( i = 1; i < argc; i++ ) { if ( argv[i][0] == '-' && argv[i][1] != 0 ) cat( "-" ); else cat( argv[i] ); } return EXIT_SUCCESS; }
-
Zitat von thosch97
So, WUERFEL v2.1
CodePROGRAM:WUERFEL :Lbl A :ClrHome :Disp randInt(1,6) :Disp "Weiter: ENTER" :Disp "Stop: CLEAR" :Repeat K≠0 :getKey→K :End :If K=105:Goto A
Jeder, der auch nur ein bisschen programmieren kann, wird wahrsceinlich sagen: "Hey, Moment mal! Man kann das doch auc h mit etwas anderem als CLEAR beenden!" Richtig. Sowas nennt sich Code einsparen.TI 84 oder 83?
-
TI-84 Plus
-
Jetzt mitmachen!
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!