Ich plane noch eine Verlinkung zu https://wiki.ubuntuusers.de/sudo/Konfiguration/ zu machen.
Shell/Bash-Skripting-Guide für Anfänger
Anmeldungsdatum: Beiträge: 3 Wohnort: Wien |
|
||||
Ehemaliger
Anmeldungsdatum: Beiträge: 28954 Wohnort: WW |
Hallo, Links einfügen ist schon ok - aber wo ist der konkrete Zusammenhang zwischen dem Skripting-Guide und sudo/Konfiguration? Gruß, noisefloor |
||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Durch Missverstehen des Codes nahm der User Karzer an, er müsse ein Skript korrigieren. Das die Grafiken in einem Unterunterverzeichnis liegen müssen hat er wohl übersehen. Den Artikel habe ich zurückgesetzt.
|
||||
Wikiteam
Anmeldungsdatum: Beiträge: 1288 Wohnort: Bad Oeynhausen |
Hallo, ich würde gerne einen Abschnitt zur Benutzung der der verschiedenen Klammerarten in Bash-Skripten machen, etwa [, [[, $(, { u.a.. Passt der noch rein? |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8558 Wohnort: Münster |
|||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
(Flüchtigkeitsfehler verbessert)
Ich frage mich, was das "(und nur solche)" heißen soll. Dass man nur Zeichenketten in Variablen ändern kann? Aber was könnte es abseits von Zeichenketten geben? Zahlen, natürlich, die aber auch Zeichenketten sind, Dateinamen, IP-Adressen, alles aus der binären Null ist letztlich eine Zeichenkette und Zahlen können ja auch bearbeitet werden. Mh. Zeichenketten können nur insoweit (mit dieser Technik) bearbeitet werden, als sie in Variablen gespeichert sind? Aber nicht literale Zeichenketten? Das wird es sein, aber dann ist die Einzahl falsch.
oder
Ja, je länger ich darüber nachdenke, desto sicherer werde ich mir, dass es so oder so gemeint ist. 😉 |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8558 Wohnort: Münster |
Der Satz sollte lauten:
Und so steht es jetzt auch im Artikel. Danke für das aufmerksame Lesen. |
||||
Wikiteam
Anmeldungsdatum: Beiträge: 1288 Wohnort: Bad Oeynhausen |
Noch etwas ist mir aufgefallen: x='Das UbuntuUsers.de-Wiki ist toll.' echo ${x/./ und wird immer besser.} Das UbuntuUsers-Wiki.de ist toll und wird immer besser. |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8558 Wohnort: Münster |
In der Tat ein merkwürdiger Effekt! Peinlich, dass es mit Windows funktioniert: $ y='Windows ist toll.' ; echo ${y/ist toll/wird immer besser} Windows wird immer besser. Aber vermutlich habe ich bei meinen Tests nur die falsche Zeile ins Wiki kopiert. Sorry. |
||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Kritik nach Information über Bearbeitung, unabhängig davon, ob der vorige Zustand auch schon kritikwürdig war: Zeile 99:
a) Der Numerus war Einzahl, also muss mit "Dieses" (Skript) oder "Dieser" (Typ) fortgesetzt werden. b) Skripte beginnen nicht <b> immer </b> mit einem Shebang, sondern meist. Plant man, sie immer mit dem Interpreter aufzurufen, dann zum Beispiel nicht. dito:
einem Shebang/welcher, wie sonst im Artikel. Zeile 134:
Zum Beispiel auf welchen nicht? Ich würde empfehlen zu schreiben: "… die nicht auf allen unixoiden Systemen installiert ist". Z 134:
Beide Shells sind turing-complete, oder, und daher kann keine etwas, das die andere nicht kann. Vorschlag: "… Hinsichtlich des Funktionsumfangs stimmen die von POSIX geforderte sh und die Bash aber nicht überein, denn die Bash hat mehr eingebaute Funktionen als sh." Z. 795:
Der Shebang, wie sonst im Artikel. |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8558 Wohnort: Münster |
Deine formal richtigen Kritikpunkte beziehen sich auf eine veraltete Fassung des Textes und beruhen teilweise auf einer nicht intendierten Leseweise. Ich habe sie deshalb nicht direkt in die aktuelle Fassung übernommen, sondern versucht, durch andere Formulierungen Deine aufgezeigten Missverständnisse zu verunmöglichen. Danke für Deine Mitarbeit. |
||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Habe ich die neue mit der alten Version verwechselt? Dann tut's mir leid, sorry. Seh's mir später noch mal an. |
||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Hi wxpte u.a. Die neueste Änderung würde ich zurückrollen.
Begründung: Inhaltlich ist das zwar richtig, aber Arrays nicht bei 0 beginnen zu lassen ist prinzipiell eine schlechte Idee, die man Anfängern, an die sich die Seite richtet, nicht vermitteln sollte. Schlecht ist die Idee deswegen, weil man das Array dann nicht mehr einfach iterieren kann
Auch kann man nicht mehr mittels Modulooperation durch das Array rotieren, da die Länge um 1 größer ist, als die Zahl der benutzbaren Elemente. Wenn man Arrays mischt, die teils mit 0, teils mit 1 beginnen, sind Flüchtigkeitsfehler vorprogrammiert. Wenn man Codeausschnitte irgendwo (uu.de, SO, ...) bespricht muss man immer drauf hinweisen. Die Fälle, wo man die Nachteile in Kauf nimmt, weil es mit anderen Vorteilen verbunden ist, sind so selten, dass es ein Anfänger wirklich nicht braucht. Java hatte mal etwas ähnliches in der Date- oder Kalenderklasse, wo es verständlich scheint, bei Date.MONTH(7) o.ä. erwartet man JULI - es war ein Desaster. Beschreibt man aber die drohenden Gefahren, bläht es den Artikel auf für eine Nichtigkeit. Ich würd's rausnehmen, auch wenn ich in kurzen ad-hoc-Scripten selbst schon davon Gebrauch gemacht habe. |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8558 Wohnort: Münster |
Ich bin weder mit der Ergänzung von wxpte glücklich noch mit Deiner Argumentation völlig einverstanden. Du schreibst selber, dass der Beitrag von wxpte inhaltlich zutrifft. Ich stimme Dir auch zu, dass er aus den von Dir genannten didaktischen Gründen überdacht werden sollte. Meine und Deine Meinung hierzu erscheinen mir aber nicht als ausreichende Rechtfertigung für den von Dir vorgeschlagenen zensierenden Eingriff. |
||||
Anmeldungsdatum: Beiträge: 17548 Wohnort: Berlin |
Ja. In den meisten Sprachen, von denen ich berichten kann, ist dieses Überdimensionieren von Arrays möglich aber keine verbreitete Praxis. Große Diskussionen dazu, die davon abraten, gibt es aber auch nicht, im Vergleich etwa zum Bannen von Switch-Statements, mehreren return-Statements in einer Methode u.a.. Wie sieht da beispielsweise in der Python- und der Javascriptwelt aus? Ist es da möglich, wird es oft gemacht? Ich vermute ein großer Teil derjenigen, die sich die Wikiseite durchlesen, haben bereits mehr oder weniger Programmiererfahrungen mit anderen Sprachen gesammelt, wenn auch nicht unbedingt viele, gründliche, langanhaltende. Obwohl es nicht falsch ist würde ich es aus der Übersicht für Anfänger raushalten, weil weniger oft mehr ist. Man könnte so viele Techniken, so viele Grenzsituationen darstellen, kompliziertes Quoting, all die Einstellungen und Schlüsselwörter abhandeln; das ufert leicht aus. Eher würde ich vorschlagen in "Programmführung" das Schlüsselwort select vorzustellen, weil es so in anderen Programmiersprachen unbekannt ist. |