[vz-users] Probleme mit Zeilenumbruch in einem Import-Script
Josef Moellers
josef.moellers at gmx.de
Fri Dec 30 10:31:20 CET 2016
On 29.12.2016 23:15, Lars Täuber wrote:
> Hallo Dennis,
>
> ich bin beim Formulieren von Antworten etwas ungeschickt. Bitte fasse die Mail nicht als Belehrung auf.
> Ich schreibe mal, ein paar Grundbemerkungen auf und dann eine Lösung, wie ich es machen würde.
>
> * Konvention in Shellskripten: Endung auf .sh; lassen sich so besser von AWK-Skripten (*.awk) usw. unterscheiden
So etwas hat neulich schon jemand anders behauptet (oder war's in einem
Forum?) und hier möchte ich mich mal einmischen und ein "Veto!" aussprechen:
Es ist egal, ob "import" ein übersetztes Hochsprachen-Programm, ein
Skript in welcher Sprache auch immer (Shell, AWK, PERL, Python,
younameitwegotit) oder gar nur eine Shell-Funktion ist: hauptsache es
tut seine Pflicht. Es ist eine "Black Box". Klar, wenn ich das Programm
modifizieren will und "<Editor der Wahl> import" aufrufe, könnte ich ein
Problem bekommen, aber das Problem ist meist schnell lösbar.
Umgekehrt wird aber ein Schuh' 'draus: Wenn ich "import" als "import.sh"
(oder "import.awk" oder "import.pl") benenne und es an zahllosen Stellen
aufrufe, was mache ich, wenn ich feststelle, daß es als Skript zu
langsam ist und es in eine Compilersprache neu implementiere? Dann muß
ich *alle* Stellen suchen, wo "import.sh" aufgerufen wird und es dort
durch "import" ersetzen. Klar, ich kann an den Stellen, an denen es
nicht weh tut, die alte Version benutzen, dann habe ich aber *zwei*
Versionen des selben programms und muß *beide* pflegen!
Die Urväter von Un*x haben sich etwas dabei gedacht, *nicht* auf
Dateiendungen zu setzen sondern auf den Inhalt, und auf den kommt's
bekanntlich an. Der Inhalt identifiziert sich selber durch die ersten
paar Bytes: "\177ELF" oder "#!". Windows zieht sich da aus der Affäre,
indem es automagisch Dateiendungen probiert, bis eine paßt, aber was,
wenn sich irgendwie plötzlich ein BAT-File vor ein COM-File setzt (oder
umgekehrt, ich nutze Windows nicht, kenne mich da in der Reihenfolge
nicht aus)?
Zu guter Letzt führt es zu Verwirrung, wenn es in einem Verzeichnis
(z.B. den diversen "bin"-Verzeichnissen) sowohl ein "import.sh" als auch
ein "import.awk" , ein "import.pl" und ein "import.bash" gibt.
Guten Rutsch!
Josef, 35 Jahre Informtiker-Erfahrung in die Waagschale werfend.
More information about the volkszaehler-users
mailing list