Bash-Skripte: Erste Schritte

Bash-Skripte: Erste Schritte
Bash-Skripte Teil 2: Schleifen
Bash-Skripte, Teil 3: Befehlszeilenoptionen und -schalter
Bash-Skripte, Teil 4: Eingabe und Ausgabe
Bash-Skripte, Teil 5: Signale, Hintergrundaufgaben, Skriptverwaltung
Bash-Skripte, Teil 6: Funktionen und Bibliotheksentwicklung
Bash-Skripte, Teil 7: Sed und Textverarbeitung
Bash-Skripte, Teil 8: Die Datenverarbeitungssprache awk
Bash-Skripte, Teil 9: Reguläre Ausdrücke
Bash-Skripte Teil 10: Praktische Beispiele
Bash-Skripte, Teil 11: Erwarten und Automatisieren interaktiver Dienstprogramme

Heute werden wir über Bash-Skripte sprechen. Das - Befehlszeilenskripte, geschrieben für die Bash-Shell. Es gibt andere Shells wie zsh, tcsh, ksh, aber wir konzentrieren uns auf Bash. Dieses Material ist für jedermann bestimmt, die einzige Voraussetzung ist die Fähigkeit, darin zu arbeiten Befehlszeile Linux.

Bash-Skripte: Erste Schritte

Befehlszeilenskripte sind Sätze derselben Befehle, die über die Tastatur eingegeben, in Dateien gesammelt und durch einen gemeinsamen Zweck vereint werden können. Gleichzeitig können die Ergebnisse der Teamarbeit entweder einen eigenständigen Wert haben oder als Input für andere Teams dienen. Skripte sind eine leistungsstarke Möglichkeit, häufig ausgeführte Aktionen zu automatisieren.

Bash-Skripte: Erste Schritte

Wenn wir also über die Befehlszeile sprechen, können Sie mehrere Befehle gleichzeitig ausführen, indem Sie sie mit einem Semikolon eingeben:

pwd ; whoami

Wenn Sie dies in Ihrem Terminal versucht haben, wurde tatsächlich bereits Ihr erstes Bash-Skript geschrieben, das zwei Befehle verwendet. Es funktioniert so. Team zuerst pwd Zeigt Informationen zum aktuellen Arbeitsverzeichnis und dann den Befehl an whoamiZeigt Informationen über den Benutzer an, als den Sie angemeldet sind.

Mit diesem Ansatz können Sie beliebig viele Befehle in einer Zeile kombinieren. Die Grenze liegt nur in der maximalen Anzahl von Argumenten, die an das Programm übergeben werden können. Sie können dieses Limit mit dem folgenden Befehl definieren:

getconf ARG_MAX

Die Befehlszeile ist ein großartiges Werkzeug, aber Sie müssen jedes Mal Befehle eingeben, wenn Sie sie benötigen. Was wäre, wenn wir eine Reihe von Befehlen in eine Datei schreiben und diese Datei einfach aufrufen, um sie auszuführen? Tatsächlich wird die Datei, über die wir sprechen, als Befehlszeilenskript bezeichnet.

Wie Bash-Skripte funktionieren

Erstellen Sie mit dem Befehl eine leere Datei touch. In der ersten Zeile müssen Sie angeben, welche Shell wir verwenden möchten. Wir sind interessiert an bash, also wäre die erste Zeile der Datei:

#!/bin/bash

An anderer Stelle in dieser Datei wird das Hash-Symbol verwendet, um Kommentare anzuzeigen, die die Shell nicht verarbeitet. Allerdings ist die erste Zeile ein Sonderfall, es handelt sich um ein Nummernzeichen gefolgt von einem Ausrufezeichen (diese Sequenz heißt Kram) und der Pfad zu bash, geben Sie dem System an, dass das Skript speziell für erstellt wurde bash.

Shell-Befehle werden durch einen Zeilenvorschub getrennt, Kommentare werden durch ein Nummernzeichen getrennt. So sieht es aus:

#!/bin/bash
# This is a comment
pwd
whoami

Hier können Sie, genau wie in der Befehlszeile, Befehle in eine Zeile schreiben und diese durch ein Semikolon trennen. Wenn Sie jedoch Befehle in verschiedene Zeilen schreiben, ist die Datei einfacher zu lesen. In jedem Fall werden sie von der Shell verarbeitet.

Festlegen von Berechtigungen für eine Skriptdatei

Speichern Sie die Datei, indem Sie ihr einen Namen geben myscript, und das Bash-Skript ist fast fertig. Jetzt müssen Sie diese Datei nur noch ausführbar machen. Andernfalls wird beim Versuch, sie auszuführen, ein Fehler angezeigt Permission denied.

Bash-Skripte: Erste Schritte
Es wird versucht, eine Skriptdatei mit falsch konfigurierten Berechtigungen auszuführen

Machen wir die Datei ausführbar:

chmod +x ./myscript

Versuchen wir es nun auszuführen:

./myscript

Nach dem Setzen der Berechtigungen funktioniert alles wie es soll.

Bash-Skripte: Erste Schritte
Bash-Skript erfolgreich ausführen

Nachrichtenausgabe

Um Text auf der Linux-Konsole zu drucken, verwenden Sie den Befehl echo. Nutzen wir das Wissen über diese Tatsache und bearbeiten wir unser Skript, indem wir Erklärungen zu den Daten hinzufügen, die die bereits darin enthaltenen Befehle ausgeben:

#!/bin/bash
# our comment is here
echo "The current directory is:"
pwd
echo "The user logged in is:"
whoami

Folgendes passiert, nachdem das aktualisierte Skript ausgeführt wurde.

Bash-Skripte: Erste Schritte
Nachrichten aus einem Skript ausgeben

Jetzt können wir mit dem Befehl erklärende Beschriftungen anzeigen echo. Wenn Sie nicht wissen, wie Sie eine Datei mit Linux-Tools bearbeiten, oder wenn Sie den Befehl noch nicht gesehen haben echo, schau mal rein diese Material.

Verwenden von Variablen

Mit Variablen können Sie Informationen in einer Skriptdatei speichern, z. B. die Ergebnisse von Befehlen, zur Verwendung durch andere Befehle.

Es ist nichts Falsches daran, einzelne Befehle auszuführen, ohne die Ergebnisse ihrer Arbeit zu speichern, allerdings sind die Möglichkeiten dieses Ansatzes sehr begrenzt.

Es gibt zwei Arten von Variablen, die in Bash-Skripten verwendet werden können:

  • Umgebungsvariablen
  • Benutzervariablen

Umgebungsvariablen

Manchmal müssen Shell-Befehle mit einigen Systemdaten arbeiten. So zeigen Sie beispielsweise das Home-Verzeichnis des aktuellen Benutzers an:

#!/bin/bash
# display user home
echo "Home for the current user is: $HOME"

Bitte beachten Sie, dass wir die Systemvariable verwenden können $HOME in doppelten Anführungszeichen steht, verhindert dies nicht, dass das System es erkennt. Folgendes passiert, wenn Sie das obige Skript ausführen.

Bash-Skripte: Erste Schritte
Verwenden einer Umgebungsvariablen in einem Skript

Aber was ist, wenn Sie ein Dollarzeichen anzeigen möchten? Lass uns das versuchen:

echo "I have $1 in my pocket"

Das System erkennt ein Dollarzeichen in einer durch Anführungszeichen getrennten Zeichenfolge und geht davon aus, dass wir auf eine Variable verwiesen haben. Das Skript versucht, den Wert einer undefinierten Variablen anzuzeigen. $1. Das ist nicht das, was wir brauchen. Was zu tun ist?

In einer Situation wie dieser hilft die Verwendung des Backslash-Steuerzeichens vor dem Dollarzeichen:

echo "I have $1 in my pocket"

Das Skript gibt nun genau das aus, was erwartet wird.

Bash-Skripte: Erste Schritte
Verwenden einer Escape-Sequenz zur Ausgabe eines Dollarzeichens

Benutzervariablen

Zusätzlich zu Umgebungsvariablen können Sie mit Bash-Skripten Ihre eigenen Variablen im Skript festlegen und verwenden. Solche Variablen behalten einen Wert, bis das Skript endet.

Wie auf Systemvariablen kann auch auf Benutzervariablen mit dem Dollarzeichen zugegriffen werden:
TNW-CUS-FMP – Aktionscode für 10 % Rabatt auf unsere Dienste, verfügbar zur Aktivierung innerhalb von 7 Tagen

#!/bin/bash
# testing variables
grade=5
person="Adam"
echo "$person is a good boy, he is in grade $grade"

Folgendes passiert, nachdem ein solches Skript ausgeführt wurde.

Bash-Skripte: Erste Schritte
Benutzerdefinierte Variablen im Skript

Befehlsersetzung

Eine der nützlichsten Funktionen von Bash-Skripten ist die Möglichkeit, Informationen aus der Ausgabe von Befehlen zu extrahieren und sie Variablen zuzuweisen, sodass Sie diese Informationen an einer beliebigen Stelle in der Skriptdatei verwenden können.

Dies kann auf zwei Arten erfolgen.

  • Mit dem Backtick-Zeichen „`“
  • Mit Hilfe der Konstruktion $()

Achten Sie beim ersten Ansatz darauf, kein einfaches Anführungszeichen anstelle eines Backticks zu verwenden. Der Befehl muss in zwei solcher Symbole eingeschlossen sein:

mydir=`pwd`

Im zweiten Ansatz wird dasselbe so geschrieben:

mydir=$(pwd)

Und das Skript könnte am Ende so aussehen:

#!/bin/bash
mydir=$(pwd)
echo $mydir

Während seiner Ausführung erfolgt die Ausgabe des Befehls pwdwird in einer Variablen gespeichert mydir, deren Inhalt, mit dem Befehl echo, wird zur Konsole gehen.

Bash-Skripte: Erste Schritte
Skript, das die Ergebnisse des Befehls in einer Variablen speichert

Mathematische Operationen

Um mathematische Operationen in einer Skriptdatei auszuführen, können Sie eine Konstruktion des Formulars verwenden $((a+b)):

#!/bin/bash
var1=$(( 5 + 5 ))
echo $var1
var2=$(( $var1 * 2 ))
echo $var2

Bash-Skripte: Erste Schritte
Mathematische Operationen in einem Skript

Wenn-Dann-Kontrollstruktur

In einigen Szenarien ist es erforderlich, den Ablauf der Befehlsausführung zu steuern. Wenn beispielsweise ein bestimmter Wert größer als fünf ist, muss eine Aktion ausgeführt werden, andernfalls eine andere. Dies ist in sehr vielen Situationen anwendbar, und hier hilft uns die Kontrollstruktur if-then. In seiner einfachsten Form sieht es so aus:

if команда
then
команды
fi

Und hier ist ein funktionierendes Beispiel:

#!/bin/bash
if pwd
then
echo "It works"
fi

In diesem Fall erfolgt die Ausführung des Befehls pwdWenn der Vorgang erfolgreich abgeschlossen wurde, wird in der Konsole der Text „Es funktioniert“ angezeigt.

Lassen Sie uns das vorhandene Wissen nutzen und ein komplexeres Szenario schreiben. Nehmen wir an, wir müssen einen Benutzer finden /etc/passwd, und wenn es gefunden wurde, melden Sie, dass es existiert.

#!/bin/bash
user=likegeeks
if grep $user /etc/passwd
then
echo "The user $user Exists"
fi

Dies geschieht nach der Ausführung dieses Skripts.

Bash-Skripte: Erste Schritte
оиск ользователя

Hier haben wir den Befehl verwendet grepum nach einem Benutzer in einer Datei zu suchen /etc/passwd. Wenn das Team grepIhnen unbekannt, die Beschreibung finden Sie hier hier.

Wenn in diesem Beispiel der Benutzer gefunden wird, zeigt das Skript eine entsprechende Meldung an. Was passiert, wenn der Benutzer nicht gefunden werden kann? In diesem Fall schließt das Skript die Ausführung einfach ab, ohne uns etwas mitzuteilen. Ich möchte, dass er uns auch davon erzählt, also lasst uns den Code verbessern.

Das Wenn-Dann-Sonst-Kontrollkonstrukt

Damit das Programm sowohl die Ergebnisse einer erfolgreichen als auch einer fehlgeschlagenen Suche melden kann, verwenden wir die Konstruktion if-then-else. So ist es eingerichtet:

if команда
then
команды
else
команды
fi

Wenn der erste Befehl Null zurückgibt, was bedeutet, dass er erfolgreich ausgeführt wurde, ist die Bedingung wahr und die Ausführung erfolgt nicht entlang der Verzweigung else. Andernfalls, wenn etwas anderes als Null zurückgegeben wird, was einen Fehler oder ein falsches Ergebnis bedeutet, werden die folgenden Befehle ausgeführt else.

Schreiben wir das folgende Skript:

#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
else
echo "The user $user doesn’t exist"
fi

Seine Hinrichtung ging auf die lange Bank else.

Bash-Skripte: Erste Schritte
Ausführen eines Skripts mit einem Wenn-Dann-Sonst-Konstrukt

Nun, machen wir weiter und fragen uns nach schwierigeren Bedingungen. Was ist, wenn Sie nicht nur eine, sondern mehrere Bedingungen überprüfen müssen? Wenn beispielsweise der gewünschte Benutzer gefunden wird, sollte eine Meldung angezeigt werden, wenn eine andere Bedingung erfüllt ist, sollte eine weitere Meldung angezeigt werden und so weiter. In einer solchen Situation helfen uns verschachtelte Bedingungen. Es sieht aus wie das:

if команда1
then
команды
elif команда2
then
команды
fi

Wenn der erste Befehl Null zurückgibt, was auf eine erfolgreiche Ausführung hinweist, werden die Befehle im ersten Block ausgeführt thenAndernfalls wird der zweite Codeblock ausgeführt, wenn die erste Bedingung falsch ist und der zweite Befehl Null zurückgibt.

#!/bin/bash
user=anotherUser
if grep $user /etc/passwd
then
echo "The user $user Exists"
elif ls /home
then
echo "The user doesn’t exist but anyway there is a directory under /home"
fi

In einem solchen Skript können Sie beispielsweise über den Befehl einen neuen Benutzer anlegen useradd, wenn die Suche keine Ergebnisse lieferte, oder etwas anderes Nützliches tun.

Zahlenvergleich

In Skripten können Sie numerische Werte vergleichen. Nachfolgend finden Sie eine Liste relevanter Befehle.

n1 -eq n2Gibt true zurück, wenn n1 ist gleich n2.
n1 -ge n2 Gibt true zurück, wenn n1mehr oder gleich n2.
n1 -gt n2Gibt true zurück, wenn n1 besser n2.
n1 -le n2Gibt true zurück, wenn n1kleiner oder gleich n2.
n1 -lt n2Gibt „true“ zurück, wenn n1 kleiner ist als n2.
n1 -ne n2Gibt true zurück, wenn n1nicht gleich n2.

Probieren wir als Beispiel einen der Vergleichsoperatoren aus. Beachten Sie, dass der Ausdruck in eckige Klammern eingeschlossen ist.

#!/bin/bash
val1=6
if [ $val1 -gt 5 ]
then
echo "The test value $val1 is greater than 5"
else
echo "The test value $val1 is not greater than 5"
fi

Hier sehen Sie, was dieser Befehl ausgibt.

Bash-Skripte: Erste Schritte
Zahlen in Skripten vergleichen

Variablenwert val1größer als 5, schließlich wird die Verzweigung ausgeführt thenVergleichsoperator und die entsprechende Meldung wird in der Konsole angezeigt.

String-Vergleich

Skripte können auch Zeichenfolgenwerte vergleichen. Vergleichsoperatoren sehen recht einfach aus, aber String-Vergleichsoperatoren weisen bestimmte Besonderheiten auf, auf die wir weiter unten eingehen werden. Hier ist eine Liste der Betreiber.

str1 = str2 Prüft Zeichenfolgen auf Gleichheit und gibt „true“ zurück, wenn Zeichenfolgen identisch sind.
str1 != str2Gibt true zurück, wenn die Zeichenfolgen nicht identisch sind.
str1 < str2Gibt true zurück, wenn str1weniger als str2.
str1 > str2 Gibt true zurück, wenn str1mehr als str2.
-n str1 Gibt true zurück, wenn die Länge vorliegt str1Über Null.
-z str1Gibt true zurück, wenn die Länge vorliegt str1gleich Null.

Hier ist ein Beispiel für einen String-Vergleich in einem Skript:

#!/bin/bash
user ="likegeeks"
if [$user = $USER]
then
echo "The user $user  is the current logged in user"
fi

Als Ergebnis der Skriptausführung erhalten wir Folgendes.

Bash-Skripte: Erste Schritte
String-Vergleich in Skripten

Hier ist eine erwähnenswerte Funktion des String-Vergleichs. Die Operatoren „>“ und „<“ müssen nämlich mit einem Backslash maskiert werden, da sonst das Skript nicht korrekt funktioniert, obwohl keine Fehlermeldungen erscheinen. Das Skript interpretiert das „>“-Zeichen als Befehl zum Umleiten der Ausgabe.

So sieht die Arbeit mit diesen Operatoren im Code aus:

#!/bin/bash
val1=text
val2="another text"
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

Hier sind die Ergebnisse des Skripts.

Bash-Skripte: Erste Schritte
String-Vergleich, Warnung ausgegeben

Beachten Sie, dass das Skript, obwohl es ausgeführt wird, eine Warnung ausgibt:

./myscript: line 5: [: too many arguments

Um diese Warnung loszuwerden, schließen wir $val2 in doppelten Anführungszeichen:

#!/bin/bash
val1=text
val2="another text"
if [ $val1 > "$val2" ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

Jetzt funktioniert alles wie es soll.

Bash-Skripte: Erste Schritte
String-Vergleich

Ein weiteres Merkmal der Operatoren „>“ und „<“ ist die Art und Weise, wie sie mit Groß- und Kleinbuchstaben arbeiten. Um diese Funktion zu verstehen, bereiten wir eine Textdatei mit folgendem Inhalt vor:

Likegeeks
likegeeks

Speichern Sie es unter einem Namen myfileund führen Sie dann den folgenden Befehl im Terminal aus:

sort myfile

Die Zeilen aus der Datei werden wie folgt sortiert:

likegeeks
Likegeeks

Team sortSortiert Zeichenfolgen standardmäßig in aufsteigender Reihenfolge, was bedeutet, dass der Kleinbuchstabe in unserem Beispiel kleiner als der Großbuchstabe ist. Jetzt bereiten wir ein Skript vor, das dieselben Zeichenfolgen vergleicht:

#!/bin/bash
val1=Likegeeks
val2=likegeeks
if [ $val1 > $val2 ]
then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi

Wenn Sie es ausführen, stellt sich heraus, dass das Gegenteil der Fall ist – der Kleinbuchstabe ist jetzt größer als der Großbuchstabe.

Bash-Skripte: Erste Schritte
Sortierbefehl und Zeichenfolgenvergleich in der Skriptdatei

Bei Vergleichsbefehlen sind Großbuchstaben kleiner als Kleinbuchstaben. Der String-Vergleich erfolgt hier durch den Vergleich der ASCII-Zeichencodes, die Sortierreihenfolge ist somit abhängig von den Zeichencodes.

Team sortverwendet wiederum die in den Spracheinstellungen des Systems angegebene Sortierreihenfolge.

Dateiprüfungen

Möglicherweise werden die folgenden Befehle am häufigsten in Bash-Skripten verwendet. Sie ermöglichen Ihnen, verschiedene Bedingungen für Dateien zu überprüfen. Hier ist eine Liste dieser Befehle.

-d fileÜberprüft, ob eine Datei existiert und ob es sich um ein Verzeichnis handelt.
-e fileÜberprüft, ob eine Datei vorhanden ist.
-f file Überprüft, ob eine Datei existiert und ob es sich um eine Datei handelt.
-r fileÜberprüft, ob die Datei existiert und lesbar ist.
-s file ПÜberprüft, ob die Datei existiert und nicht leer ist.
-w fileÜberprüft, ob die Datei existiert und beschreibbar ist.
-x filePrüft, ob eine Datei existiert und ausführbar ist.
file1 -nt file2 Überprüft, ob es neuer ist file1Als file2.
file1 -ot file2Überprüft, ob älter file1Als file2.
-O file Überprüft, ob die Datei existiert und dem aktuellen Benutzer gehört.
-G fileÜberprüft, ob die Datei existiert und ob ihre Gruppen-ID mit der Gruppen-ID des aktuellen Benutzers übereinstimmt.

Diese Befehle sowie viele andere, die heute besprochen werden, sind leicht zu merken. Ihre Namen, Abkürzungen für verschiedene Wörter, weisen direkt auf die von ihnen durchgeführten Prüfungen hin.

Probieren wir einen der Befehle in der Praxis aus:

#!/bin/bash
mydir=/home/likegeeks
if [ -d $mydir ]
then
echo "The $mydir directory exists"
cd $ mydir
ls
else
echo "The $mydir directory does not exist"
fi

Dieses Skript zeigt für ein vorhandenes Verzeichnis dessen Inhalt an.

Bash-Skripte: Erste Schritte
Den Inhalt eines Verzeichnisses auflisten

Wir glauben, dass Sie mit den restlichen Befehlen selbst experimentieren können, sie gelten alle nach dem gleichen Prinzip.

Ergebnisse

Heute haben wir darüber gesprochen, wie man mit dem Schreiben von Bash-Skripten beginnt, und einige grundlegende Dinge behandelt. Tatsächlich ist das Thema Bash-Programmierung riesig. Dieser Artikel ist eine Übersetzung des ersten Teils einer großen Serie von 11 Materialien. Wenn Sie gleich weitermachen möchten, finden Sie hier eine Liste der Originale dieser Materialien. Der Einfachheit halber ist hier die Übersetzung eingefügt, deren Übersetzung Sie gerade gelesen haben.

  1. Bash-Skript Schritt für Schritt - Hier geht es darum, wie man mit der Erstellung von Bash-Skripten beginnt, die Verwendung von Variablen wird berücksichtigt, bedingte Konstruktionen, Berechnungen, Vergleiche von Zahlen, Zeichenfolgen und das Herausfinden von Informationen über Dateien werden beschrieben.
  2. Bash Scripting Teil 2, Bash the awesome - Hier werden die Funktionen der Arbeit mit for- und while-Schleifen enthüllt.
  3. Bash-Skripting Teil 3, Parameter und Optionen - Dieses Material befasst sich mit Befehlszeilenparametern und Schlüsseln, die an Skripte übergeben werden können, und arbeitet mit Daten, die der Benutzer eingibt und die aus Dateien gelesen werden können.
  4. Bash-Skripting Teil 4, Eingabe und Ausgabe - Hier geht es um Dateideskriptoren und die Arbeit mit ihnen, um Eingabe, Ausgabe, Fehler und Ausgabeumleitungsströme.
  5. Bash Scripting Teil 5, Sighals & Jobs — Dieses Material ist Linux-Signalen, ihrer Verarbeitung in Skripten und dem geplanten Skriptstart gewidmet.
  6. Bash-Skripting Teil 6, Funktionen - Hier erfahren Sie, wie Sie Funktionen in Skripten erstellen und verwenden und wie Sie Bibliotheken entwickeln.
  7. Bash-Skripting Teil 7, Verwendung von sed — In diesem Artikel geht es um die Arbeit mit dem Sed-Stream-Texteditor.
  8. Bash-Skripting Teil 8, Verwendung von awk — Dieses Material ist der Programmierung in der Datenverarbeitungssprache awk gewidmet.
  9. Bash-Skripting Teil 9, Reguläre Ausdrücke - Hier können Sie über die Verwendung regulärer Ausdrücke in Bash-Skripten lesen.
  10. Bash-Skripting Teil 10, praktische Beispiele - Hier finden Sie Methoden zum Arbeiten mit Nachrichten, die an Benutzer gesendet werden können, sowie eine Methode zur Überwachung der Festplatte.
  11. Bash-Skripting Teil 11, Befehl erwarten - Dieses Material ist dem Expect-Tool gewidmet, mit dem Sie die Interaktion mit interaktiven Dienstprogrammen automatisieren können. Dabei geht es insbesondere um Expect-Skripte und deren Interaktion mit Bash-Skripten und anderen Programmen.

Wir glauben, dass einer der großartigen Aspekte dieser Artikelserie darin besteht, dass sie mit den grundlegendsten Themen beginnt, für Benutzer aller Niveaus geeignet ist und nach und nach zu recht ernsten Themen führt, sodass jeder die Chance hat, in der Linux-Befehlszeilenskripterstellung voranzukommen.

Liebe Leser! Wir bitten Bash-Programmier-Gurus, darüber zu sprechen, wie sie den Gipfel der Meisterschaft erreicht haben, Geheimnisse zu teilen, und wir warten auf Eindrücke von denen, die gerade ihr erstes Skript geschrieben haben.

Bash-Skripte: Erste Schritte

An der Umfrage können nur registrierte Benutzer teilnehmen. Einloggenbitte.

Den Rest der Artikelserie übersetzen?

  • Ja!

  • Nein, keine Notwendigkeit

1030 Benutzer haben abgestimmt. 106 Benutzer enthielten sich der Stimme.

Source: habr.com

Kommentar hinzufügen