<div dir="ltr"><div><div><div>Na wie derm auch sei- ich fand den Exkurs in die Shellprogrammierung sehr hillfreich- bei mir ists leider meist trial and error- zumindest kenne ich mittlerweile einige Stellen an denen ich rumprobieren kann :)<br><br></div>Vielen Dank an Lars und Euch alles einen Guten Rusch und ein Gesundes und Erfolgreiches 2017!<br><br></div>Viele Grüße,<br></div>Andreas<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">2016-12-30 10:31 GMT+01:00 Josef Moellers <span dir="ltr"><<a href="mailto:josef.moellers@gmx.de" target="_blank">josef.moellers@gmx.de</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 29.12.2016 23:15, Lars Täuber wrote:<br>
> Hallo Dennis,<br>
><br>
> ich bin beim Formulieren von Antworten etwas ungeschickt. Bitte fasse die Mail nicht als Belehrung auf.<br>
> Ich schreibe mal, ein paar Grundbemerkungen auf und dann eine Lösung, wie ich es machen würde.<br>
><br>
> * Konvention in Shellskripten: Endung auf .sh; lassen sich so besser von AWK-Skripten (*.awk) usw. unterscheiden<br>
</span>So etwas hat neulich schon jemand anders behauptet (oder war's in einem<br>
Forum?) und hier möchte ich mich mal einmischen und ein "Veto!" aussprechen:<br>
<br>
Es ist egal, ob "import" ein übersetztes Hochsprachen-Programm, ein<br>
Skript in welcher Sprache auch immer (Shell, AWK, PERL, Python,<br>
younameitwegotit) oder gar nur eine Shell-Funktion ist: hauptsache es<br>
tut seine Pflicht. Es ist eine "Black Box". Klar, wenn ich das Programm<br>
modifizieren will und "<Editor der Wahl> import" aufrufe, könnte ich ein<br>
Problem bekommen, aber das Problem ist meist schnell lösbar.<br>
<br>
Umgekehrt wird aber ein Schuh' 'draus: Wenn ich "import" als "import.sh"<br>
(oder "import.awk" oder "<a href="http://import.pl" rel="noreferrer" target="_blank">import.pl</a>") benenne und es an zahllosen Stellen<br>
aufrufe, was mache ich, wenn ich feststelle, daß es als Skript zu<br>
langsam ist und es in eine Compilersprache neu implementiere? Dann muß<br>
ich *alle* Stellen suchen, wo "import.sh" aufgerufen wird und es dort<br>
durch "import" ersetzen. Klar, ich kann an den Stellen, an denen es<br>
nicht weh tut, die alte Version benutzen, dann habe ich aber *zwei*<br>
Versionen des selben programms und muß *beide* pflegen!<br>
<br>
Die Urväter von Un*x haben sich etwas dabei gedacht, *nicht* auf<br>
Dateiendungen zu setzen sondern auf den Inhalt, und auf den kommt's<br>
bekanntlich an. Der Inhalt identifiziert sich selber durch die ersten<br>
paar Bytes: "\177ELF" oder "#!". Windows zieht sich da aus der Affäre,<br>
indem es automagisch Dateiendungen probiert, bis eine paßt, aber was,<br>
wenn sich irgendwie plötzlich ein BAT-File vor ein COM-File setzt (oder<br>
umgekehrt, ich nutze Windows nicht, kenne mich da in der Reihenfolge<br>
nicht aus)?<br>
<br>
Zu guter Letzt führt es zu Verwirrung, wenn es in einem Verzeichnis<br>
(z.B. den diversen "bin"-Verzeichnissen) sowohl ein "import.sh" als auch<br>
ein "import.awk" , ein "<a href="http://import.pl" rel="noreferrer" target="_blank">import.pl</a>" und ein "import.bash" gibt.<br>
<br>
Guten Rutsch!<br>
<br>
Josef, 35 Jahre Informtiker-Erfahrung in die Waagschale werfend.<br>
</blockquote></div><br></div>