...in welcher Sprache das zugehörige Projekt realisiert wurde. Unter Umständen ist es nämlich eher hinderlich, die Verarbeitung extern auszulagern, wenn man mit Skripten arbeitet, die synchron funktionieren.
NAchdem ich nun immer mehr mit NodeJS mache, bin ich allerdings wieder dazu übergegangen, einfach externe Tools zu nutzen, weil diese meistens einfach seit Jahren oder Jahrzehnten funktionieren! Warum das Rad immer wieder neu erfinden!?
Ich erfinde ebenso das Rad nicht neu :-) Meistens fängt es mit bash an, wird es komplexer und man braucht klarere Strukturen (Schleifen usw.), dann schreib' ich teilweise neu und ändere dabei die Shebang-Zeile. Längere Zeit nach Python. Jetzt doch wieder Skripte in Perl. So Richtung Python gedacht tendiere ich zur (grob gesagt) kompilierten Variante Genie. Diese "Skripte" sind dann natürlich schneller. https://en.wikipedia.org/wiki/Genie_(programming_language)
Bei mir ist es auch eine Mischung. Je nachdem wie komplex die Aufgabe ist verwende ich entweder Perl Skripte oder sed, awk und cut. Da ich meistens Listen verarbeiten muss kommen in der Regel auch noch sort und uniq dazu wenn ich z.B. Doppelte Einträge entfernen will.
Dieser Beitrag wurde 1 mal editiert. Zuletzt am 02. Mai 2014 um 15:52.
Jetzt müsste es nur noch jemand benutzten. Aber hey, das ist eine Scriptsprache, die kann man nicht mit der Maus bedienen, da wird's natürlich nichts in der Windows-Welt
Der kurze Anfang in awk wird meistens zu einem ganzen Filter in awk. Dann macht man daraus ein binary indem man es mit awka in C übersetzt und anschliessend mit cc kompiliert.
...würde ich vermutlich Julia wählen. Einfach, weil ich so beeindruckt bin, dass die Schaffer der Sprache wirklich an alles gedacht zu haben scheinen, z.B. ist Unicode von Anfang an richtig drin.
durchforste, bearbeite, analysiere, reduziere und schreibe in DB's täglich ca. 400GByte Log- und Accountingdaten von postfix, apache,ngnix, squid, radius und co.
Alles on the fly als daemons realisiert. Insgesamt sind da inzwischen ca. 90000 Zeilen Code entstanden.
Ich hatte auch mal mit java getestet. Perl ist besser, braucht deutlich weniger Ressouren und ist schneller.
Ich gehe bei der Frage mal vom privaten Umfeld aus und da habe ich meist keine Daten, die ich so automatisiert verarbeiten müsste.
Diese Fälle sind recht selten, lediglich neulich hatte ich mal so einen Fall und da habe ich ein Shellscript geschrieben, weil dieses für den Zweck ausreichte und ich mit diesem zuerst angefangen hatte. Und sobald das funktioniert, mache ich mir keine Mühe mehr, dass in einer anderen Sprache umzuschreiben.
Und wenn ich über ein Skript nachdenke, dann ist die Aufgabe oftmals so trivial und auf dieses eine Problem eingeschränkt, dass ich meistens manuell dann doch schneller am Ziel bin und es sich auch gar nicht erst lohnt ein Skript dafür zu schreiben. Manchmal genügt es auch einfach, manuell eine Kombination aus fertigen Werkzeugen dafür zu nutzen und in vielen Fällen, z.B. bei einer Berechnung von vielen Zahlenwerten, ist eine Tabellenkalkulation oder ein DBMS dann doch die bessere Lösung, als ein Skript selbst zu schreiben.
Insofern stellt sich die Frage, in welchen Fällen ihr im privaten Umfeld zu Skripten greift? Ein paar Beispiele wären nicht schlecht.
Zu behaupten, dass bei der Verwendung von atoi("2e+2") ein Ergebnis von "2" falsch wäre, zeugt lediglich von der Unfähigkeit Handbuchseiten zu lesen.
atoi(X) entspricht der Funktion strtol(X, NULL, 10).
The strtol() function converts the initial part of the string in nptr to a long integer value according to the given base, which must be between 2 and 36 inclusive, or be the special value 0. .... The remainder of the string is converted to a long int value in the obvious manner, stopping at the first character which is not a valid digit in the given base.
Soweit ich informiert bin, ist das 'e' keine gültige Dezimalziffer.
Bei solch groben Schnitzern habe ich schlicht keinen Antrieb, mir den Rest durchzulesen.
Im Grunde ist der Text, soweit es mir scheint, am besten wie folgt zusammengefasst: "Perl ist perfekt. Alle anderen sind mist".
Viele Schlussfolgerungen sind entweder an den Haaren herbeigezogen, basieren auf speziell auf die Stärken von Perl hin optimierten Tests oder sind reine Meinungsäußerungen.
Mal Awk, mal Shell, häufig sogar Emacs, denn die Tastaturmakros sind erste Sahne. Ich habe aber Python gewählt, weil ich es häufig nutze, weil es schön einfach ist.
Ich hatte am Samstag wieder das Vergnügen, ein komplizierteres Shell-Skript zu entwickeln. Es ist jedes Mal ein Abenteuer, weil die Bash-Syntax alles anderes als gut durchdacht ist.
eine einfache Antwort auf eine komplizierte Frage gibt es nicht!
entweder openOffice mit Datenbankanbindung via ODBC für Serienbriefen usw.. Oder eine Eigenprogrammierung. Je nach Anwendungsfall mit Java, C# oder PHP.
Gerne vermeide ich es auch für soetwas "Insellösungen" zu nehmen, die nur unter einer bestimmten Umgebung funktionieren. Dementsprechend lasse ich in der Regel die Finger von Perl/Shellskripten aus dem Internet.
...in welcher Sprache das zugehörige Projekt realisiert wurde. Unter Umständen ist es nämlich eher hinderlich, die Verarbeitung extern auszulagern, wenn man mit Skripten arbeitet, die synchron funktionieren.
NAchdem ich nun immer mehr mit NodeJS mache, bin ich allerdings wieder dazu übergegangen, einfach externe Tools zu nutzen, weil diese meistens einfach seit Jahren oder Jahrzehnten funktionieren! Warum das Rad immer wieder neu erfinden!?
Ich erfinde ebenso das Rad nicht neu :-)
Meistens fängt es mit bash an, wird es komplexer und man braucht klarere Strukturen (Schleifen usw.), dann schreib' ich teilweise neu und ändere dabei die Shebang-Zeile. Längere Zeit nach Python. Jetzt doch wieder Skripte in Perl. So Richtung Python gedacht tendiere ich zur (grob gesagt) kompilierten Variante Genie. Diese "Skripte" sind dann natürlich schneller.
https://en.wikipedia.org/wiki/Genie_(programming_language)
Kommt auf die Komplexität, Wichtigkeit, Portierbarkeit, Skalierbarkeit und Wartung an.
Vieles kann man ich per Shellskript/sed/gawk/cut/uniq erledigen. Wird´s komplexer, dann gerne Python, vor allem wenn in DBs geschrieben werden muss.
Ein sehr mächtiges Tool ist übriges FFE (Flat file extractor ) --> http://ff-extractor.sourceforge.net/
Ich nutze Ruby-Scripte und/oder Pipe dann viel mit SED/AWK
Bei mir ist es auch eine Mischung. Je nachdem wie komplex die Aufgabe ist verwende ich entweder Perl Skripte oder sed, awk und cut.
Dieser Beitrag wurde 1 mal editiert. Zuletzt am 02. Mai 2014 um 15:52.Da ich meistens Listen verarbeiten muss kommen in der Regel auch noch sort und uniq dazu wenn ich z.B. Doppelte Einträge entfernen will.
Wenn ich die Wahl habe, also keine Sprache vorgegeben ist, dann nehme ich immer Python. Es ist eine Wohltat im Vergleich zu Perl!
Ist bei mir genau das Gegenteil der Fall.
was here
Werkzeug wählen für die Aufgabe ...
...meine Sekretärin...
Vim search and replace
PowerShell!
Bash. Da tippe ich ein: mv Windows &> /dev/null
Powershell ist das, was den Linuxer neidig machen kann auf die Windows-Leute. Leider nichts mit der Objektorientierung sichtbar unter Linux.
Jetzt müsste es nur noch jemand benutzten. Aber hey, das ist eine Scriptsprache, die kann man nicht mit der Maus bedienen, da wird's natürlich nichts in der Windows-Welt
Wüßte ich jetzt nicht, warum ich darauf neidisch sein sollte.
Sollst du ja auch nicht. Du sollst neidig sein. Neidig!
Der kurze Anfang in awk wird meistens zu einem ganzen Filter in awk. Dann macht man daraus ein binary indem man es mit awka in C übersetzt und anschliessend mit cc kompiliert.
http://awka.sourceforge.net/index.html
...würde ich vermutlich Julia wählen.
Einfach, weil ich so beeindruckt bin, dass die Schaffer der Sprache wirklich an alles gedacht zu haben scheinen, z.B. ist Unicode von Anfang an richtig drin.
Ich habe Julia getestet und bin seit 24 Stunden ein Fan von Julia!
http://julialang.org/
Danke gavin!
durchforste, bearbeite, analysiere, reduziere und schreibe in DB's täglich ca. 400GByte Log- und Accountingdaten von postfix, apache,ngnix, squid, radius und co.
Alles on the fly als daemons realisiert. Insgesamt sind da inzwischen ca. 90000 Zeilen Code entstanden.
Ich hatte auch mal mit java getestet. Perl ist besser, braucht deutlich weniger Ressouren und ist schneller.
Ich gehe bei der Frage mal vom privaten Umfeld aus und da habe ich meist keine Daten,
die ich so automatisiert verarbeiten müsste.
Diese Fälle sind recht selten, lediglich neulich hatte ich mal so einen Fall und da habe ich ein Shellscript geschrieben, weil dieses für den Zweck ausreichte und ich mit diesem zuerst angefangen hatte.
Und sobald das funktioniert, mache ich mir keine Mühe mehr, dass in einer anderen Sprache umzuschreiben.
Und wenn ich über ein Skript nachdenke, dann ist die Aufgabe oftmals so trivial und auf dieses eine Problem eingeschränkt, dass ich meistens manuell dann doch schneller am Ziel bin und es sich auch gar nicht erst lohnt ein Skript dafür zu schreiben. Manchmal genügt es auch einfach, manuell eine Kombination aus fertigen Werkzeugen dafür zu nutzen und in vielen Fällen, z.B. bei einer Berechnung von vielen Zahlenwerten, ist eine Tabellenkalkulation oder ein DBMS dann doch die bessere Lösung, als ein Skript selbst zu schreiben.
Insofern stellt sich die Frage, in welchen Fällen ihr im privaten Umfeld zu Skripten greift?
Ein paar Beispiele wären nicht schlecht.
Also mir fallen da ganz spontan irgendwelche Videokonvertierungsorgien ein.
Na, z.B. wenn man Texte, wie z.B. freie Bücher, in ein schön formatiertes e-Book konvertieren will.
Dafür benutzt du aber doch hoffentlich fertige Tools und schreibst nicht dein eigenes Skript.
Wenn ich normal programmiere, verwende ich meistens C++ und Qt.
Ich sehe keinen Grund das mit Text Dateien nicht auch zu tun.
Ein Grund ist vielleicht, dass man nicht immer normal programmieren möchte.
Dann hast du dir wahrscheinlich noch nie Pattern-Matching in Perl im Vergleich zu Pattern-Matching in C++ angesehen.
Es gibt doch PCRE.
Wie wäre es mit Zeitersparnis?
Während du noch programmierst, laufen unsere "Skripte" schon xD.
für das Bearbeiten großer Datenmengen
http://raid6.com.au/~onlyjob/posts/arena/
Ziemlich schlechte Quelle.
int val=atoi(str);
Zu behaupten, dass bei der Verwendung von atoi("2e+2") ein Ergebnis von "2" falsch wäre, zeugt lediglich von der Unfähigkeit Handbuchseiten zu lesen.
atoi(X) entspricht der Funktion strtol(X, NULL, 10).
Soweit ich informiert bin, ist das 'e' keine gültige Dezimalziffer.
Bei solch groben Schnitzern habe ich schlicht keinen Antrieb, mir den Rest durchzulesen.
Im Grunde ist der Text, soweit es mir scheint, am besten wie folgt zusammengefasst: "Perl ist perfekt. Alle anderen sind mist".
Viele Schlussfolgerungen sind entweder an den Haaren herbeigezogen, basieren auf speziell auf die Stärken von Perl hin optimierten Tests oder sind reine Meinungsäußerungen.
Mal Awk, mal Shell, häufig sogar Emacs, denn die Tastaturmakros sind erste Sahne. Ich habe aber Python gewählt, weil ich es häufig nutze, weil es schön einfach ist.
Ich hatte am Samstag wieder das Vergnügen, ein komplizierteres Shell-Skript zu entwickeln. Es ist jedes Mal ein Abenteuer, weil die Bash-Syntax alles anderes als gut durchdacht ist.
eine einfache Antwort auf eine komplizierte Frage gibt es nicht!
entweder openOffice mit Datenbankanbindung via ODBC für Serienbriefen usw..
Oder eine Eigenprogrammierung. Je nach Anwendungsfall mit Java, C# oder PHP.
Gerne vermeide ich es auch für soetwas "Insellösungen" zu nehmen, die nur unter einer bestimmten Umgebung funktionieren. Dementsprechend lasse ich in der Regel die Finger von Perl/Shellskripten aus dem Internet.