Bash-Theorie

/ bin / bash

0. Index

  1. Dinge, die den meisten Menschen passieren
  2. Struktur eines Skripts
  3. Auf dem Bildschirm drucken
  4. Benutzer-EINGABE lesen
  5. Berechnungen in Bash
  6. Bedingungen
  7. Schleifen
  8. funciones
  9. getops

1. Dinge, die den meisten Menschen passieren

/ bin / bash oder / bin / sh

Eines der ersten Dinge, die der Computer bei der Ausführung unseres Skripts tut, ist die Prüfung, mit welcher Shell er dies tun soll. Auf den meisten aktuellen Linux-Systemen / Bin / sh ist ein Link zu / bin / bashDies ist jedoch nicht immer der Fall, beispielsweise bei Distributionen, die diese verwenden busybox sie bringen Sh und normalerweise bringen sie auch Bash, aber wenn Sie verwenden / Bin / shwird es nicht mit Bash laufen. Deshalb empfehle ich immer zu verwenden / bin / bash.

Unicode gegen ASCII

Haben Sie sich jemals gefragt, warum Sie in Ihren Skripten nicht "¿" oder "ñ" verwenden können? Oder Akzente setzen? In interaktiven Skripten kann dies ziemlich ärgerlich sein. Dies liegt daran, dass die Standardcodierung für Bash ASCII oder der englische Zeichensatz ist. Um dies zu ändern, müssen wir unserem Skript nur mitteilen, dass wir Unicode verwenden möchten. Dazu müssen Sie direkt nach dem Befehlsinterpreter eine Zeile hinzufügen:

# - * - ENCODING: UTF-8 - * -

Seien Sie vorsichtig, es ist wichtig, dass diese Zeile am Anfang des Skripts steht.

Machen Sie das Skript ausführbar

Es ist lustig, wie viele Leute die Skripte mit «ausführen$ bashscript.sh" Anstatt von "$ ./script.sh'Schließlich haben wir dafür eine Shell definiert.

Um Ausführungsberechtigungen hinzuzufügen, müssen Sie Folgendes ausführen:

sudo + x script.sh
Wenn unser Skript ausführbar ist, können wir es unserem PATH hinzufügen und es von jedem Ort / Ordner auf unserem Computer aus ausführbar machen. Dazu müssen wir entweder die .bashrc-Datei unseres Benutzers oder die Zeile / etc / bashrc hinzufügen
BIN = "Ordner, in dem wir die Skripte haben" PATH = "$ BIN $ PATH"
Es ist eine Bash-Regel, Variablennamen in Großbuchstaben zu schreiben. Viele Leute befolgen diese Regel nicht, aber für lange Skripte wird sie geschätzt, weil sie sie viel lesbarer machen

2. Struktur eines Skripts

  1. Kopf
  2. Definition globaler Variablen
  3. Hilfe
  4. funciones
  5. Hauptkörper

In der Kopfzeile geben wir an, welche Shell wir verwenden möchten und welche Codierung. Der Vorteil der Funktionen besteht darin, Code, der durch einmaliges Schreiben wiederholt wird, wiederzuverwenden und das Verständnis des Skripts zu erleichtern. Bei Code mit mehr als 100 Zeilen ist dies sehr nützlich.

Um Funktionen verwenden zu können, müssen sie vor dem Hauptteil unseres Skripts definiert werden. Und wenn wir Variablen auf globaler Ebene aller unserer Skripte verwenden möchten, sowohl im Hauptteil als auch in den Funktionen, müssen wir sie am Anfang von allem direkt nach dem Header definieren.

Schließlich empfiehlt es sich, eine Hilfsfunktion zu schreiben, wenn unser Skript schlecht oder mit schlechten Parametern ausgeführt wird. In diesen Fällen möchten wir das Skript natürlich sofort beenden, ohne die Funktionen zu lesen. Dafür können wir verwenden:

function help () {echo "" "Unser gut formatierter Hilfetext." "beenden, wenn [[-z $ 1 || $ 1 == "-h" || $ 1 == "--help"]]; dann hilf fi

Wenn wir der Hilfefunktion "exit" hinzufügen, beenden wir das Skript jedes Mal, wenn wir die Hilfe ausführen, z. B. nach Fehlermeldungen usw. Wir speichern einige Codezeilen.

Die Bedingung zeigt die Anzeigehilfe auf dem Bildschirm an und wird beendet, wenn das Skript ohne Parameter ausgeführt wird oder wenn -h / –help angegeben ist. Wenn Sie es sich ansehen, ist dies das Standardverhalten der meisten Linux-Programme.

Die Verwendung der 3 Anführungszeichen mit Echo ermöglicht die Verwendung von Zeilenumbrüchen, ohne dass die Nachricht von Echo angezeigt wird. Bei mehrzeiligen Nachrichten ist es viel bequemer, das Echo nur einmal zu verwenden.

3. Drucken Sie auf dem Bildschirm

Es gibt 2 Hauptbefehle zum Drucken auf dem Bildschirm in Bash: «Echo„Und“printf«. Sie sind beide genauso schnell und beide sind Teil von Bash. Der Hauptunterschied für einen Anfänger besteht darin, dass das Echo am Ende eine neue Zeile hinzufügt, während «printf"Nicht.

Echo ist sehr gut und wird von den meisten Benutzern verwendet. Wenn Sie jedoch die EINGABE des Benutzers lesen oder Variablen drucken möchten, die per Textverarbeitung aus Dateien entnommen wurden, können seltsame Dinge passieren. Sie lassen sich normalerweise leicht lösen, so einfach wie das Ändern der doppelten Anführungszeichen in einfache oder umgekehrt oder das Entfernen der variablen Referenzen aus den Anführungszeichen. «Echo»Macht seltsame Dinge auch abhängig davon, wie es kompiliert wurde, wenn wir immer Ubuntu oder immer Fedora verwenden, hat es keine Auswirkungen auf uns, aber wenn wir die Distribution ändern, tut es das.

Deshalb benutze ich «printf«, Was mir keine Kopfschmerzen bereitet und sich auch eher so verhält«printf»Von C oder dem«drucken»Von Python ist dies sehr wichtig, wenn Sie Ihr Skript jemals auf eine andere Programmiersprache portieren möchten.

Für eine ausführlichere Diskussion können Sie besuchen diese Frage von Unix & Linux auf Stack Exchange.

4. Lesen Sie die Benutzereingabe

Alles, was wir nach dem Namen unseres Skripts und vor dem Drücken der EINGABETASTE schreiben, wird automatisch in speziellen Variablen gespeichert. Diese Variablen sind vom Typ $ X, wobei X eine Zahl ist.

«$0»Gibt den Namen unseres Skripts an und von«$1»Bis ins Unendliche ist alles, was wir später geschrieben haben, variabel. Zum Beispiel:

cat << EOF >> test.sh #! / bin / bash # - * - ENCODING: UTF-8 - * - printf "\ $ 0 = $ 0 \ n" printf "\ $ 1 = $ 1 \ n" printf "\ $ 2 = $ 2 \ n" EOF chmod + x script.sh ./script.sh my file.txt

Wir erstellen ein Testskript, machen es ausführbar und führen es mit 2 Parametern aus. Wir erhalten die Bildschirmausgabe von:

$ 0 = ./script.sh $ 1 = meine $ 2 = file.txt

Mit Anführungszeichen hätten wir "my file.txt" an "$ 1" übergeben können.

Wir können auch die EINGABE eines Benutzers mit dem Befehl "read" lesen, der direkt die Variable angibt, in der der Parameter gespeichert werden soll. Zum Beispiel:

printf "Wie heißt du? \ n" lies NAME printf "Hallo, $ NAME. \ n"
Seien Sie vorsichtig bei der Zuweisung von Variablen. "$ VAR = content" erzeugt einen Fehler. Zwischen dem Gleichheitszeichen, dem Variablennamen und dem Inhalt dürfen keine Leerzeichen stehen. Die korrekte Verwendung ist "VAR = Inhalt"

5. Berechnungen in Bash

Dafür können wir «verwendenausdr«, Solange wir keine komplexen Berechnungen durchführen müssen. Zwei Dinge sollten beachtet werden, das erste ist, dass «ausdr»Lässt nur ganze Zahlen zu, die zweite ist, dass die Division das gesamte Ergebnis zurückgibt, um den Rest zu sehen, den wir verwenden können«%«.

Normalerweise möchten wir das Ergebnis von expr einer Variablen zuweisen. Wir können das auf zwei Arten tun:

VAR2 = `Ausdruck $ VAR1 / 10` VAR2 = $ (Ausdruck $ VAR1 / 100)

Sie können auch überspringen «ausdr»Doppelklammern verwenden:

VAR2 = $ (($ VAR1 / 100))
Für eine weitere Erklärung von «ausdr»Oder eine Alternative, die ganze Zahlen verwendet, können Sie sich ansehen dieser KZKG ^ gaara Eintrag.

6 Bedingungen

Es wurde bereits sehr ausführlich über «if«,«sonst«,«elif»Und Bedingungen. Sie können darüber lesen in:

Ich möchte nur den Unterschied zwischen der Verwendung einfacher eckiger Klammern hervorheben. «[]«Und doppelte Klammern«[[]]«, Für die Bedingungen. Mit doppelten Klammern können wir zusätzliche Bedingungen verwenden:

  • «&&"Für und
  • «||»Für oder

Benutzen "&&„Und“||»Bei einfachen eckigen Klammern sollte jedes Teil zwischen getrennten eckigen Klammern getrennt werden. Das Beispiel für den Teil des Skripts, der prüft, ob Hilfe ausgeführt werden muss, lautet:

if [-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "--help"]]; dann hilf fi

Es erspart uns auch, Variablennamen in Anführungszeichen schreiben zu müssen, um Fehler zu vermeiden. Zum Beispiel:

wenn [$ 1 = 1]; dann printf "Der Parameter ist gleich 1."; fi wenn ["$ 1" = 1]; dann printf "Der Parameter ist gleich 1."; fi wenn [[$ 1 = 1]]; dann printf "Der Parameter ist gleich 1."; fi

Wenn script.sh ohne Parameter ausgeführt wird, gibt der erste Fall einen Fehler aus:

bash: [: =: unärer Operator erwartet
In Bash werden "=" und "==" beide gleich interpretiert. Dies ist in anderen Programmiersprachen nicht der Fall, in denen "=" nur zum Zuweisen von Variablen verwendet wird.

Was nicht besprochen wurde, ist «Häuser«, Was zur Vereinfachung verwendet wird«if«. Beginnen wir am Anfang, wenn wir keine haben «if»Der gesamte Code wird ausgeführt. Wenn wir eine Bedingung hinzufügen «if»Wir werden zwei Fälle haben, in denen der Codeblock innerhalb des«if»Und der andere Fall, in dem dieser Block nicht ausgeführt wird.

Wenn wir ein «hinzufügensonst«Wir werden auch zwei Fälle haben, aber diese beiden Fälle unterscheiden sich von den vorherigen. Denn jetzt gibt es zwei bedingte Codeblöcke, A und B, und einen C-Block, der den Rest des Programms ausmacht. A oder B werden ausgeführt und C. Im vorherigen Fall waren es A und C oder nur C.

Um Schreibbedingungen zu vermeiden «ansonsten" innerhalb "sonst»Und um das Lesen des Codes zu vereinfachen, wurde er erstellt«elif«. Wenn wir viele Bedingungen haben, die von der vorherigen abhängen, zum Beispiel den Zahlenbereich oder den Typ:

VAR1 = $ 1 wenn [[$ VAR1 = 1]]; dann printf "1 \ n" elif [[$ VAR1 = 2]]; dann printf "2 \ n" elif [[$ VAR1 = 3]]; dann printf "3 \ n" sonst printf "none \ n" fi

Im Falle des letzten «elif»Viele Bedingungen werden gelesen. Mit dem Fall, dass dieser Prozess rationalisiert wird:

VAR1 = $ 1 case $ VAR in 1) printf "1 \ n" ;; 2) printf "2 \ n" ;; 3 | 4) printf "3 oder 4, es kommt darauf an \ n" ;; *) printf "none \ n" ;; dieses C

Eine Variable wird gelesen, in diesem Fall VAR1, und es wird geprüft, ob sie einem der Fälle entspricht. Andernfalls wird der Standardfall "*" ausgeführt. Doppelte Semikolons entsprechen «brechen", Sie erzählen"Häuser»Das muss enden.

«Gehäuse»Kann auch als Folge von« verwendet werdenif«, Dafür müssen Sie« ;; & »(weiter) anstelle von« ;; »verwenden. (halt).

7. Schleifen

In jeder Programmiersprache sind nur sehr wenige Schleifen bekannt. In Bash sind sie «während«,«bis„Und“für«. Es wurde bereits im Blog darüber geschrieben:

Es gibt zwei Arten von Schleifen «für«, Diejenigen, die vom Typ sind«$ für VAR in LOQUESEA»Und was ist vom Typ C«$ for ((I = 0; I <= 10; I ++))«. Die zweite Art von Schleifen «für»Sind sehr nützlich, es hat 3 Teile am Anfang der Schleife:

  • Deklaration und Initiierung von Variablen (in diesem Fall eine Hilfsvariable "I = 0").
  • Ausführungsbedingung (bis I kleiner oder gleich 10 ist).
  • Erhöhung der Hilfsvariablen

Meiner Meinung nach ist es die mächtigste Schleife von allen. Ein Beispiel, das alle Zahlen von 0 bis einschließlich 10 druckt:

#! / bin / bash für ((I = 0; I <= 10; I ++)); printf "$ I \ n" fertig

8. Funktionen

Es gibt einige Dinge, die Bash uns nicht erlaubt, oder? Auf den ersten Blick verhindern Bash-Funktionen, dass Sie drei Dinge tun: lokale Variablen in Funktionen deklarieren, Parameter an Funktionen übergeben und Parameter zurückgeben. Alles hat eine Lösung.

Mach nichts wie:

#! / bin / bash VAR = 1 printc "$ VAR \ n" -Funktion hello () {VAR = 2 printf "$ VAR \ n"} hallo printf "$ VAR \ n"

Dies wird auf Bildschirm 1, 2 und 2 gedruckt.

Um lokale Variablen zu deklarieren, fügen Sie «hinzuaus einer regionalen»Bei der Erklärung:

#! / bin / bash VAR = 1 printf "$ VAR1 \ n" -Funktion foo () {local VAR1 = 2 printf "$ VAR1 \ n"} printf "$ VAR1 \ n" foo printf "$ VAR1 \ n"

Dies druckt 1, 1, 2, 1 auf dem Bildschirm.

Wie übergeben Sie Parameter an eine Funktion?

#! / bin / bash # - * - ENCODING: UTF-8 - * - Funktion hello () {printf "Hallo $ 1 \ n"}

printf "Wie heißt du? \ n"
Lesen Sie VAR1
Hallo $ VAR1

Wie werden Parameter zurückgegeben?

#! / bin / bash # - * - ENCODING: UTF-8 - * - Funktion hello () {printf "Hallo holita"} printf "Wie heißt du? \ n" lies VAR1 VAR1 = $ (hallo) # HIER IST ES printf "$ VAR1 $ VAR2 \ n"

Wie Sie sehen können, hat dies zwei Nachteile: Sie können nur einen Parameter zurückgeben, bei dem es sich um einen Vektor 😀 handeln kann. Wenn Sie einen Parameter zurückgeben möchten, können Sie mit dieser Funktion nicht mehr auf dem Bildschirm drucken.

Weitere Informationen zu Funktionen finden Sie unter [url=https://blog.desdelinux.net/programando-en-bash-parte-3/]dieser Artikel von Usemoslinux[/url].

9. Getops

Eines der letzten Dinge, die Sie über Bash wissen müssen, um komplexe Skripte zu erstellen, ist «Getops«. Es wird verwendet, um Optionen unabhängig von der Reihenfolge an das Skript zu übergeben. Der einzige Nachteil ist, dass nur kurze Optionen betroffen sind:

#! / bin / bash # - * - ENCODING: UTF-8 - * - VARC = 0 function help () {printf "Hilfemeldung \ n" beenden} if [[-z $ 1]]; dann hilf fi während getopts: ha: b: c OPT; Fall $ OPT in h) Hilfe ;; :) Hilfe ;; a) VARA = $ OPTARG ;; b) VARB = $ OPTARG ;; c) VARC = 1 ;; \?) Hilfe ;; esac done # Hauptblock des Skripts, der # Dinge mit VARA, VARB und VARC macht

«Getopte»Liest die Optionen einzeln, daher wird eine Schleife benötigt.

Es gibt zwei Arten von Optionen, die mit «übergeben werden könnenGetopte„:

  • Parameter werden als Flags bezeichnet, in diesem Fall -c oder -h. Sie werden mit dem Buchstaben angegeben, den wir verwenden möchten. Sie sind wie boolesche Variablen «was immer dies auch sein sollte.»(Sind) oder«falsch"(Sie sind nicht hier).
  • Parameter mit zugehörigen Argumenten, -a alles, -b alles. Sie werden mit dem gewünschten Buchstaben mit einem Doppelpunkt unten angegeben. Das Argument wird in OPTARG gespeichert (dieser Name ist unveränderlich).
Die anfänglichen Doppelpunkte sollen keine Fehler anzeigen.

Was macht dieses Skript?

Zeigt die Hilfemeldung an, wenn keine Option übergeben wird, wenn der Parameter "-h" übergeben wird, wenn ein ungültiger Parameter übergeben wird (z. B. "-x", dies erfolgt durch "\?") Oder wenn ein gültiger Parameter mit no Streit (":"). In den übrigen Fällen wird das Vorhandensein von "-c" als 1 in VARC gespeichert und die Werte mit "-a" und "-b" in VARA und VARB übergeben.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   lebhaft sagte

    MEISTERHAFT. Ich sage nicht mehr U_U

  2.   Miguel sagte

    Hallo sehr guter Artikel.
    Hey, du hast die Berechtigungen sudo + x anstelle von chmod + x gegeben

    1.    Henry sagte

      $ sudo chmod + x script.sh
      (Genauer gesagt, hehe)

      Ah, Glückwunsch und danke!

  3.   Feuer kalt sagte

    Sehr guter Beitrag, ich gratuliere dir wirklich, mach weiter so, Grüße

  4.   Gustavo sagte

    Und wenn Sie möchten, dass das Skript bei der Ausführung Schritt für Schritt sichtbar wird und beispielsweise sieht, wie sich Variablen, Bedingungen und alles verhalten, können Sie Folgendes verwenden:

    sh-x Skript

    Grüße

  5.   Kanake sagte

    STÜCK Tuto. Hervorragend und sehr gut erklärt.
    Danke.

  6.   Armin sagte

    Hervorragender Beitrag zum Thema 😉

  7.   Mario Guillermo Zavala Silva sagte

    Sehr interessant und wichtig, danke für die Information….
    PROST !!!

  8.   nichtausbrooklyn sagte

    Vielen Dank für Ihre Glückwünsche, denn für den Befehl Miguel lässt er mich den Eintrag nicht ändern, sobald er veröffentlicht ist. Ich denke, es muss elav tun.

  9.   Adrian sagte

    Sehr gut

    Zunächst wollte ich Ihnen zu diesem Beitrag gratulieren. Ich fand es leicht zu verstehen und es hilft wirklich, die Richtlinien zu befolgen, um gut in Bash zu programmieren, insbesondere für Leute, die mit dem Programmieren beginnen.

    Ich habe jedoch einige Details gefunden, die meiner Meinung nach korrigiert werden sollten.

    Erstens: in Abschnitt «2. STRUKTUR EINES SCRIPT »Die Funktion ist nicht geschlossen, was zu Problemen bei der Ausführung in einem Skript führt.
    Die Lösung wäre, direkt nach dem Befehl "exit" eine schließende Klammer hinzuzufügen.

    Zweitens: in Abschnitt «4. LESEN SIE DIE BENUTZEREINGABE “Sie bestätigen, dass die Parameter, die der Benutzer eingeben kann, zwischen 0 USD und unendlich liegen.„ Bash “wird jedoch nur zwischen 0 USD und 9 USD interpretiert, da 10 USD gleich 1 + 0 USD wären.
    Um dieses Problem zu lösen, können Sie entweder den Befehl "shift" verwenden, um die folgenden Variablen abzurufen. Oder geben Sie die Variable in geschweiften Klammern "$ {10}" an, damit bash die Werte zusammenfasst und nicht $ 1 + 0.

    Ohne weiteres Grüße!

    1.    nichtausbrooklyn sagte

      Vielen Dank für Ihren Kommentar. Die korrekte Verwendung von exit konnte sowohl im Skript als auch in den Funktionen nicht vollständig erklärt werden. Was $ {10} betrifft, war ich noch nie in der Lage, so viel zu tun, also bin ich nicht auf dieses Problem gestoßen. Es ist gut zu wissen, dass es eine Lösung dafür gibt (ich habe das heute Gelernte bereits durchgestrichen 😀) .

  10.   Chanio sagte

    Vielen Dank für den Artikel! Einige Dinge, die Sie erwähnen, waren noch nicht geklärt. Zum Beispiel getops.
    Im Teil der Bildschirmausgaben mussten Sie die Katze erwähnen, die Sie später erwähnen ...
    Katze <
    ***************************************
    * DIESES FORMULAR IST SEHR AUSDRÜCKLICH *
    ***************************************
    EOF

    In Ihrem Beispiel:
    cat << EOF >> test.sh
    Zwei Dinge sollten erwähnt werden ... >> es ist 'anhängen', das heißt, wenn Sie denselben Befehl wiederholen, haben Sie das gesamte Skript doppelt ... Sie sollten nur eines verwenden ...
    cat << EOF> script.sh
    Ja, es sollte auch script.sh heißen
    Dann in
    if [-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "–help"]]; dann
    Hilfe
    fi

    Ich denke es sollte geschrieben werden ...
    if [[-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "–help"]]; dann
    ...

    Bei BASH gibt es noch viel mehr zu entdecken.
    Könnten Sie es "BASICS" nennen? 🙂
    Beispiel: Parameter 'testers' wie -z, um festzustellen, ob sie leer sind, oder -f, um festzustellen, ob sie als Datei vorhanden sind.

    Nochmals vielen Dank für Ihre Mühe.
    alberto

  11.   clow_eriol sagte

    Ein sehr gutes Bash-Skript-Tutorial!

  12.   OCZ sagte

    -- ENCODING: UTF-8 --

    Es ist das erste Mal, dass ich diese Zeile sehe, um die Zeichenkodierung in einem Bash-Skript festzulegen. Es scheint mir eher Python als Bash. Ist es wirklich notwendig? Ich habe bei Google nach einer Referenz gesucht, kann aber nichts finden. Haben Sie einen Link zur Hand, der über diese Angelegenheit spricht? Speziell auf die Eignung dieser Linie.

    Meiner Meinung nach müssen Sie zum Schreiben von Skripten in Bash mit UTF-8 nur die Textdatei als solche (ohne Stückliste) speichern und bestimmte Umgebungsvariablen (LANG und LC_ *) korrekt festlegen.
    Dann ist es natürlich notwendig, dass die ausgeführten Befehle für andere Codierungen als ASCII vorbereitet werden. Wenn wir beispielsweise in Großbuchstaben schreiben möchten, scheint dies nicht zu funktionieren:
    «Echo áéíóú | tr az AZ »
    o:
    «Echo áéíóú | tr [: unter:] [: oben:] »
    und es ist besser zu verwenden:
    «Echo áéíóú | awk '{print toupper ($ 0)}' ».

    1.    nichtausbrooklyn sagte

      Über die "Codierung»Wurde in diesem Blog bereits erwähnt:

      Bash: Wie macht man ein Skript ausführbar?
      Dienstprogramm-Skript nach der Installation

    2.    Borriquito wie du sagte

      Jemand korrigiert mich, aber diese Codierungszeile (# -- ENCODING: UTF-8 --) Es hat nichts mit Bash oder der Shell zu tun: Es ist eine Kommentarzeile (beginnt mit #) und dient dazu, dem EDITOR mitzuteilen, dass wir das Skript (vim, emacs ...) für die Codierung der Datei schreiben.

      Tatsächlich sieht bash eine solche Zeile nicht, da es sich um eine Kommentarzeile handelt.

  13.   JörgE-1987 sagte

    Ausgezeichnetes Tutorial, da Sysadmin Scripting in Bash unbedingt kennen muss, ist es für alles nützlich.

    Sehr sehr gut!

    Viele Grüße!

  14.   Eduard Cuomo sagte

    Falls es für jemanden nützlich ist, finden Sie hier verschiedene Verwendungszwecke und Beispiele zum Erstellen eigener Skripte: https://github.com/reduardo7/hsabx

  15.   Schwarzer Lito sagte

    Sehr gut. Neue Dinge, die ich meinen Skripten hinzufügen kann. Das codierende Ding und das printf-Ding hatten es nicht.
    Vielen Dank!!!

  16.   xxxtonixxx sagte

    Sooo guter Artikel! Ich behalte dieses für Favoriten, es wäre schön, zu korrigieren, was falsch ist, und es sogar mit mehr Inhalten zu erweitern. Ein Applaus für all diese Infos !!!!