30 Bash-Skript Interviewfragen und Antworten

30 Bash Script Interview Questions

Bash-Scripting ist eine sehr nützliche und leistungsstarke Programmiersprache, die hauptsächlich verwendet wird, um jede manuelle Aufgabe zu automatisieren. Ein Arbeitssuchender, der Automatisierungstester oder Bash-Programmierer werden möchte, muss sich im Vorstellungsgespräch einigen häufig gestellten Fragen stellen. Unter Linux gibt es verschiedene Arten von Shell-Skripten. Eines der beliebtesten und am häufigsten verwendeten Shell-Skripte ist Bourne Again Shell oder Bash. In diesem Artikel werden 30 wichtige Interviewfragen und Antworten zur Bash-Skriptsprache beschrieben, um sich auf den Job vorzubereiten.

#01. Was ist ein Bash-Skript?

Das Bash-Skript ist eine Shell-Programmiersprache. Im Allgemeinen führen wir viele Arten von Shell-Befehlen vom Terminal aus aus, indem wir jeden Befehl separat eingeben, der Zeit und Mühe erfordert. Wenn wir dieselben Befehle erneut ausführen müssen, müssen wir alle Befehle vom Terminal erneut ausführen. Aber mit einem Bash-Skript können wir viele Shell-Befehlsanweisungen in einer einzigen Bash-Datei speichern und die Datei jederzeit mit einem einzigen Befehl ausführen. Viele Aufgaben im Zusammenhang mit der Systemverwaltung, Programminstallation, Festplattensicherung, Auswertung von Protokollen usw. können mit dem richtigen Bash-Skript erledigt werden.



#02. Welche Vorteile bietet die Verwendung von Bash-Skripten?

Bash-Skript hat viele Vorteile, die im Folgenden beschrieben werden:



  • Es ist einfach zu bedienen und zu erlernen.
  • Viele manuelle Aufgaben, die häufig ausgeführt werden müssen, können automatisch durch das Schreiben eines Bash-Skripts ausgeführt werden.
  • Die Abfolge mehrerer Shell-Befehle kann mit einem einzigen Befehl ausgeführt werden.
  • Bash-Skript, das in einem Linux-Betriebssystem geschrieben wurde, kann problemlos in einem anderen Linux-Betriebssystem ausgeführt werden. Es ist also tragbar.
  • Das Debuggen in bash ist einfacher als in anderen Programmiersprachen.
  • Befehlszeilensyntax und Befehle, die im Terminal verwendet werden, ähneln den Befehlen und der Syntax, die in Bash-Skripten verwendet werden.
  • Bash-Skript kann verwendet werden, um mit anderen Skriptdateien zu verknüpfen.

#03. Erwähnen Sie die Nachteile von Bash-Skripten

Einige Nachteile von Bash-Skript werden im Folgenden erwähnt:



  • Es funktioniert langsamer als andere Sprachen.
  • Das falsche Skript kann den gesamten Prozess beschädigen und einen komplizierten Fehler erzeugen.
  • Es ist nicht für die Entwicklung einer großen und komplexen Anwendung geeignet.
  • Es enthält im Vergleich zu anderen Standardprogrammiersprachen weniger Datenstruktur.

#04. Welche Arten von Variablen werden in der Bash verwendet?

Im Bash-Skript können zwei Arten von Variablen verwendet werden. Diese sind:

Systemvariablen
Die vom Linux-Betriebssystem vordefinierten und verwalteten Variablen werden als Systemvariablen bezeichnet. Diese Art von Variablen werden immer von einem Großbuchstaben verwendet. Die Standardwerte dieser Variablen können je nach Bedarf geändert werden.

`set`, `env` und ` printenv `-Befehle können verwendet werden, um die Liste der Systemvariablen auszudrucken.

Beispiel:

#!/bin/bash
# Systemvariablen drucken

#Bash-Shell-Namen drucken
rauswerfen $BASH

# Bash-Shell-Version drucken
rauswerfen $BASH_VERSION

# Name des Home-Verzeichnisses drucken
rauswerfen $HOME

Benutzerdefinierte Variable

Die Variablen, die von Benutzern erstellt und verwaltet werden, werden als benutzerdefinierte Variablen bezeichnet. Sie werden auch lokale Variablen genannt. Diese Variablentypen können mit Klein- oder Großbuchstaben oder sowohl Groß- als auch Kleinbuchstaben deklariert werden. Es ist jedoch besser, keine Großbuchstaben zu verwenden, um die Variablen von den Systemvariablen zu unterscheiden.
Beispiel:

#!/bin/bash

Auf eins=100
rauswerfen $num

#05. Wie deklariere und lösche ich Variablen in der Bash?

Die Variable kann in bash nach Datentyp oder ohne Datentyp deklariert werden. Wenn eine Bash-Variable ohne deklariert wird erklären Befehl, dann wird die Variable als String behandelt. Die Bash-Variable wird mit . deklariert erklären Befehl, um den Datentyp der Variablen bei der Zeitdeklaration zu definieren.



-R , -i, -a, -A, -l, -u, -t und -X Optionen können verwendet werden mit erklären Befehl, um eine Variable mit verschiedenen Datentypen zu deklarieren.

Beispiel:

#!/bin/bash

#Variable ohne Typ deklarieren
Auf eins=10

#Werte werden kombiniert, aber nicht addiert
Ergebnis=$num+zwanzig
rauswerfen $Ergebnis

#Variable mit Integer-Typ deklarieren
erklären -ich Auf eins=10

#Werte werden hinzugefügt
erklären -ich Ergebnis=num+zwanzig
rauswerfen $Ergebnis

unscharf Befehl wird verwendet, um alle Bash-Variablen zu entfernen. Die Variable ist nach der Verwendung unzugänglich oder undefiniert unscharf Befehl.

Beispiel:

#!/bin/bash

P='Linux-Hinweis'
rauswerfen $ str
unscharf $ str
rauswerfen $ str

#06. Wie füge ich Kommentare in einem Bash-Skript hinzu?

Einzeilige und mehrzeilige Kommentare können in Bash-Skripten verwendet werden. ‘ # ‘ Symbol wird für einzeilige Kommentare verwendet. '<<’ Symbol mit Trennzeichen und ‘:’ mit einfach (‘) werden zum Hinzufügen von mehrzeiligen Kommentaren verwendet.

Beispiel:

#!/bin/bash
#Drucken Sie den Text [Einzeiliger Kommentar]
rauswerfen 'Bash-Programmierung'
< Berechnen Sie die Summe
Von zwei Zahlen [mehrzeiliger Kommentar]
einen Kommentar hinzufügen

Auf eins=25+35
rauswerfen $num
:'
Kombiniere zwei
String-Daten [mehrzeiliger Kommentar]
'

Zeichenfolge='Hallo'
rauswerfen $string' Welt'

#07. Wie können Sie Strings in einem Bash-Skript kombinieren?

Stringwerte können in der Bash auf unterschiedliche Weise kombiniert werden. Normalerweise werden die Stringwerte durch Zusammenfügen kombiniert, aber es gibt andere Möglichkeiten in der Bash, Stringdaten zu kombinieren.

Beispiel:

#!/bin/bash
#Variablen initialisieren
str1='PHP'
str2='Bash'
str3='Perl'

# Zeichenfolge zusammen mit Leerzeichen drucken
rauswerfen $str1 $str2 $str3

#Kombiniere alle Variablen und speichere sie in einer anderen Variablen
P='$str1,$str2und$str3'

#Kombiniere andere String-Daten mit dem vorhandenen Wert des Strings
str + ='sind Skriptsprachen'

#Drucke die Zeichenfolge
rauswerfen $ str

#08. Welche Befehle werden verwendet, um die Ausgabe in der Bash zu drucken?

`Echo` und `printf` Befehle können verwendet werden, um die Ausgabe in der Bash zu drucken. `echo ` Befehl wird verwendet, um die einfache Ausgabe zu drucken und `printf` Befehl wird verwendet, um die formatierte Ausgabe zu drucken.

Beispiel:

#!/bin/bash

#Drucken Sie den Text
rauswerfen 'Willkommen bei LinuxHint'
Seite? ˅='linuxhint.com'
#Drucken Sie den formatierten Text
druckenf '%s ist eine beliebte Blog-Site ' $site

#09. Wie nehme ich Eingaben vom Terminal in Bash entgegen?

`lesen` Der Befehl wird in einem Bash-Skript verwendet, um Eingaben vom Terminal entgegenzunehmen.

Beispiel:

#!/bin/bash
#Nachricht drucken
rauswerfen 'Gib deinen Namen ein'
#Nehmen Sie Eingaben vom Benutzer an
lesenName
# Geben Sie den Wert von $name mit einer anderen Zeichenfolge aus
rauswerfen 'Dein Name ist$name'

#10. Wie verwende ich Befehlszeilenargumente in der Bash?

Befehlszeilenargumente werden gelesen von $1, $2, $3…$n Variablen. Befehlszeilenargumentwerte werden im Terminal beim Ausführen des Bash-Skripts bereitgestellt. $ 1 wird verwendet, um das erste Argument zu lesen, $ 2 wird verwendet, um das zweite Argument zu lesen und so weiter.

Beispiel:

#!/bin/bash
#Überprüfe, ob ein Argument angegeben wurde oder nicht
wenn [[ $ # -eq 0 ]];dann
rauswerfen 'Kein Argument wird angegeben.'
Ausfahrt 0
Sein
#Speichere den ersten Argumentwert
Farbe=$ 1
# Geben Sie das Argument mit einer anderen Zeichenfolge aus
druckenf 'Deine Lieblingsfarbe ist %s ' $ Farbe

#11. Ist Bash eine schwach typisierte Sprache? Wieso den?

Ja, bash wird als schwach oder lose typisierte Sprache angesehen, da der Datentyp zum Zeitpunkt der Variablendeklaration nicht deklariert werden muss. Alle Bash-Variablen werden standardmäßig als String behandelt und der Typ der Variablen wird basierend auf dem aktuellen Wert festgelegt. Bash-Variablen mit Datentypen können definiert werden mit erklären Befehl mit einer bestimmten Option. Die Optionen zum Definieren von Datentypen sind jedoch begrenzt und unterstützen nicht alle Datentypen. Zum Beispiel, schweben Datentyp kann nicht mit . deklariert werden erklären Befehl.

Beispiel:

#!/bin/bash

#Der Datentyp von $myVar ist standardmäßig string
myVar=29

# Drucken Sie die Variable
rauswerfen $myVar

# Deklarieren Sie die Integer-Variable $number mit dem Wert 67
erklären -ich Nummer=67

#Drucken Sie die Variable
rauswerfen $zahl

# Weisen Sie der numerischen Variablen Zeichenfolgendaten zu. Die folgende Zeile erzeugt
# Syntaxfehler und der Wert von $number ändert sich nicht
Nummer=„Ich mag Bash“
rauswerfen $zahl

#12. Wie liest man das zweite Wort oder die zweite Spalte aus jeder Zeile einer Datei?

Das zweite Wort oder die zweite Spalte einer Datei kann in einem Bash-Skript leicht gelesen werden, indem verschiedene Bash-Befehle verwendet werden, wie z. B. `awk`, `sed` usw. Hier wird die Verwendung von `Ach` wird im folgenden Beispiel gezeigt.
Beispiel: Angenommen, die Datei 'course.txt' enthält den folgenden Inhalt und wir haben nur das zweite Wort jeder Zeile dieser Datei gedruckt.

CSE201 Java-Programmierung
CSE303-Datenstruktur
CSE408 Unix-Programmierung#!/bin/bash
# Das folgende Skript gibt das zweite Wort jeder Zeile aus der Datei 'course.txt' aus.
# die Ausgabe des cat-Befehls wird an den awk-Befehl übergeben, der das zweite Wort liest
# jeder Zeile.
rauswerfen ``Katzekurs.txt| awk '{$2 drucken}'``

#13. Wie deklariere ich eine Array-Variable in der Bash und greife darauf zu?

Sowohl numerische als auch assoziative Arrays werden von einem Bash-Skript unterstützt. Eine Array-Variable kann mit und ohne Deklaration-Befehl deklariert werden. -zu Option wird mit dem Befehl deklarieren verwendet, um ein numerisches Array zu definieren und -ZU Die Option wird mit der Anweisung deklarieren verwendet, um ein assoziatives Array in der Bash zu definieren. Ohne den Befehl 'declare' kann das numerische Array nur in der bash definiert werden.

Beispiel:

#!/bin/bash

# Deklarieren Sie ein einfaches numerisches Array
arr1=(CodeIgniter Laravel ReactJS)

# Ausgabe des ersten Elementwerts von $arr1
rauswerfen $ {arr1 [0] {

# Deklarieren Sie ein numerisches Array mit dem Befehl deklarieren
erklären -zu arr2=(HTML-CSS-JavaScript)

# Ausgabe des zweiten Elementwerts von $arr2
rauswerfen ${arr2[1]}

# Deklarieren Sie ein assoziatives Array mit der Deklaration-Anweisung
erklären -ZU arr3=( [Rahmen]=Laravel[CMS]=Wordpress[Bücherei]=JQuery)

# Den dritten Elementwert von $arr3 ausgeben
rauswerfen ${arr3[Bibliothek]}

Auf alle Elemente eines Arrays kann zugegriffen werden, indem eine beliebige Schleife oder ein '*'-Symbol als Array-Index verwendet wird.

#14. Wie können bedingte Anweisungen in der Bash verwendet werden?

Die häufigste bedingte Anweisung in den meisten Programmiersprachen ist das wenn-sonst-sonst Stellungnahme. Die Syntax von wenn-sonst-sonst -Anweisung in der bash unterscheidet sich ein wenig von anderen Programmiersprachen. 'Wenn' -Anweisung kann in einem Bash-Skript und jeder Art von auf zwei Arten deklariert werden 'wenn' Block muss mit geschlossen werden 'Sein' . 'wenn' -Anweisung kann durch dritte oder erste Klammern wie andere Programmiersprachen definiert werden.

Syntax:
ZU.

wenn [Zustand];
dann
Aussagen
Sein

B.

wenn [Zustand];dann
Aussagen1
anders
Stellungnahme2
Sein

C.

wenn [Zustand];dann
Stellungnahme1
elif[Zustand];dann
Stellungnahme2
….
anders
Aussage Nr
Sein

Beispiel:

#!/bin/bash

# Weisen Sie $n . einen Wert zu
n=30
# Prüfen, ob $n größer als 100 ist oder nicht
wenn [ $n -gt 100 ];dann
rauswerfen '$nist weniger als 100'
# Überprüfen Sie $n ID größer als 50 oder nicht
elif [ $n -gt fünfzig ];dann
rauswerfen '$nist weniger als 50'
anders
rauswerfen '$nist weniger als 50'
Sein

#fünfzehn. Wie vergleiche ich Werte in der Bash?

In bash können sechs Arten von Vergleichsoperatoren verwendet werden, um Werte zu vergleichen. Je nach Datentyp gibt es zwei Möglichkeiten, diese Operatoren in bash zu verwenden. Diese werden im Folgenden erwähnt.

Saitenvergleich Ganzzahliger Vergleich Beschreibung
== -eq Es wird verwendet, um die Gleichheit zu überprüfen
! = -geboren Es wird verwendet, um die Ungleichung zu überprüfen
< -lt Es wird verwendet, um zu überprüfen, ob der erste Wert kleiner als der zweite Wert ist oder nicht
> -gt Es wird verwendet, um zu überprüfen, ob der erste Wert größer als der zweite Wert ist oder nicht
<= -das Es wird verwendet, um zu überprüfen, ob der erste Wert kleiner oder gleich dem zweiten Wert ist oder nicht
> = -geben Sie Es wird verwendet, um zu überprüfen, ob der erste Wert größer oder gleich dem zweiten Wert ist oder nicht

Beispiel:

#!/bin/bash
# Initialisieren $n
n=130
oder='sogar'
# Überprüfen Sie, ob $n größer oder gleich 100 ist oder nicht „–ge“ verwendet.
wenn [ $n -geben Sie 100 ];dann
rauswerfen '$nist größer oder gleich 100'
anders
rauswerfen '$nist weniger als 100'
Sein
# Überprüfen Sie, ob $n gerade oder ungerade ist, indem Sie den '=='-Operator verwenden
wenn (( $ o=='sogar' ));dann
rauswerfen „Die Zahl ist gerade“
anders
rauswerfen „Die Zahl ist ungerade“
Sein

# 16. Welche bedingte Anweisung kann als Alternative zu if-elseif-else-Anweisungen in der bash verwendet werden?

'Fall' Anweisung kann alternativ verwendet werden tp wenn-sonst-wenn Stellungnahme. Die Syntax für 'Fall' -Anweisung in Bash-Skripten unterscheidet sich von der Schaltergehäuse Anweisung anderer Programmiersprachen. 'Fall' Block wird geschlossen von 'esac' Aussage in bash. Nein ' brechen ‘ Anweisung wird innerhalb verwendet ‘ Fall ‘-Block, um den Block zu beenden.

Syntax:

Fall in
Übereinstimmungsmuster1)Befehle;;
Übereinstimmungsmuster2)Befehle;;
……
Übereinstimmungsmuster n)Befehle;;
esac

Beispiel:

#!/bin/bash
#Initialisiere die Variable $ticket
Fahrkarte=101
# Vergleiche den Wert von $ticket mit 23, 101 und 503
Fall $ticket in
2. 3)
# Nachricht drucken, wenn der Wert 23 . beträgt
rauswerfen „Du hast den ersten Preis bekommen“;;
101)
# Nachricht drucken, wenn der Wert 101 . ist
rauswerfen „Du hast den zweiten Preis bekommen“;;
503)
# Nachricht drucken, wenn der Wert 503 . beträgt
rauswerfen „Du hast den dritten Preis bekommen“;;
*)
# Nachricht drucken, wenn der Wert nicht mit 23, 101 und 503 übereinstimmt
rauswerfen 'Entschuldigung, versuchen Sie es das nächste Mal'
Ausfahrt 0;;
esac

#17. Welche verschiedenen Arten von Loops können in der Bash verwendet werden?

Drei Arten von Schleifen werden von einem Bash-Skript unterstützt. Diese sind während für und bis um Schleifen. Schleifen in der Bash prüfen die Bedingung am Anfang der Schleife. Während Schleife funktioniert, bis die Bedingung wahr bleibt und bis um Schleife funktioniert, bis die Bedingung falsch bleibt. Es gibt zwei Möglichkeiten zu verwenden zum Schleife. Einer ist allgemein zum Schleife, die drei Teile enthält und ein weiterer ist für in Schleife. Die Verwendung dieser drei Schleifen wird im folgenden Beispiel gezeigt.

Beispiel:

#!/bin/bash
# Initialisieren $n
n=5
# Berechnen Sie das Quadrat von 5-1 mit der while-Schleife
während [ $n -gt 0 ]
tun
Quadratmeter= $((n*n))
rauswerfen 'Das Quadrat von$nist$qr'
((n--))
getan

# Berechnen Sie das Quadrat von 5-1 mit der for-Schleife
zum (( ich=5; ich>0; ich--))
tun
Quadratmeter= $((ich*ich))
rauswerfen 'Das Quadrat von$iist$qr'
getan

# $x initialisieren
x=5

# Berechnen Sie das Quadrat von 5-1 mithilfe von until loop
bis um [ $ x -das 0 ]
tun
Quadratmeter= $((x*x))
rauswerfen 'Das Quadrat von$ xist$qr'
((x--))
getan

#18. Wie können Unterprogramme in der bash deklariert und aufgerufen werden?

In der bash wird eine Funktion oder Prozedur als Unterprogramm bezeichnet. Die Deklaration und der Aufruf einer Subroutine in der bash unterscheidet sich von anderen Sprachen. Im Gegensatz zu anderen Standardprogrammiersprachen kann in Unterprogrammen kein Argument deklariert werden. Lokale Variablen können jedoch innerhalb des Unterprogramms definiert werden, indem die 'lokal' Stichwort.

Beispiel:

#!/bin/bash
# Initialisieren Sie die Variablen $x und $y, die global sind
x=10
und=35

# Deklarieren Sie die Funktion
myFunc() {
# Deklarieren Sie die lokale Variable $x
lokal x=fünfzehn

# Weisen Sie die globale Variable $y neu zu
und=25

# Berechne die Summe von $x und $y
Mit= $((x + y))

# Gibt die Summe einer lokalen Variablen $x und einer globalen Variablen $y aus
rauswerfen 'Die Summe von$ xund$ jagleicht$ z'
}

# Rufen Sie die Funktion auf
myFunc

# Gibt die Summe der globalen Variablen $x und $y aus
rauswerfen 'Die Summe von$ xund$ jagleicht$ z'

#19. Wie schneidet und druckt man einen Teil einer String-Daten in bash?

Bash hat keine eingebaute Funktion wie andere Sprachen, um einen Teil der String-Daten auszuschneiden. Aber mit der Parametererweiterung kann jeder String-Wert in bash geschnitten werden. In der Parametererweiterung können drei Teile definiert werden, indem man mit einem Doppelpunkt trennt, um einen beliebigen Teil der Stringdaten auszuschneiden. Hier sind die ersten beiden Teile obligatorisch und der letzte Teil optional. Der erste Teil enthält die Hauptvariable der Saite, die zum Schneiden verwendet wird, der zweite Teil ist die Startposition, von der aus die Saite geschnitten wird, und der dritte Teil ist die Länge der Schneideschnur. Die Startposition muss ab 0 gezählt werden und die Länge muss ab 1 der Hauptschnur gezählt werden, um den Schnittwert abzurufen.

Beispiel:

#!/bin/bash
# Initialisiere einen String-Wert in $string
Schnur='Python-Skriptsprache'
# Schneiden Sie den String-Wert von Position 7 bis zum Ende des Strings
rauswerfen ${string:7}
# Schneiden Sie den String-Wert von 9 Zeichen ab der Position 7
rauswerfen ${string:7:9}
# Schneiden Sie den String-Wert von 17 auf 20
rauswerfen ${string:17:-4}

# 20. Erwähnen Sie einige Möglichkeiten, arithmetische Operationen in bash auszuführen?

Arithmetische Operationen können in Bash auf verschiedene Weise ausgeführt werden. „let“, „expr“, „bc“ und Doppelklammern sind die gebräuchlichsten Methoden, um arithmetische Operationen in bash auszuführen. Die Verwendung dieser Befehle wird im folgenden Beispiel gezeigt.

Beispiel:

#!/bin/bash
# Berechnung der Subtraktion unter Verwendung von expr und Parameterexpansion
var1= $( ausdruck 120-100 )
# Ergebnis drucken
rauswerfen $ var1
# Berechnen Sie die Addition mit dem Befehl let
Lassen var2=200+300
# Ergebnis ausdrucken
rauswerfen $var2
# Berechnen und drucken Sie den Wert der Division mit 'bc', um das Ergebnis zu erhalten
# mit Bruchwert
rauswerfen 'Skala=2; 44/7' | bc
# Berechnen Sie den Wert der Multiplikation mit doppelten Klammern
var3= $(( 5*3 ))
# Ergebnis ausdrucken
rauswerfen $var3

#21. Wie überprüfe ich, ob ein Verzeichnis vorhanden ist oder die Bash nicht verwendet?

Bash verfügt über viele Testbefehle, um zu überprüfen, ob eine Datei oder ein Verzeichnis existiert oder nicht, und den Typ der Datei. '-D' Option wird mit einem Verzeichnispfad als bedingte Anweisung verwendet, um zu überprüfen, ob das Verzeichnis in der Bash existiert oder nicht. Wenn das Verzeichnis existiert, wird true zurückgegeben, andernfalls wird false zurückgegeben.

Beispiel:

#!/bin/bash
# Weisen Sie das Verzeichnis mit Pfad in der Variablen zu, $path
Weg='/home/ubuntu/temp'
# Überprüfen Sie, ob das Verzeichnis existiert oder nicht
wenn [ -D '$Pfad' ];dann
# Nachricht drucken, wenn das Verzeichnis existiert
rauswerfen 'Verzeichnis vorhanden'
anders
# Nachricht drucken, wenn das Verzeichnis nicht existiert
rauswerfen 'Verzeichnis existiert nicht'
Sein

#22. Wie kann ein Bash-Skript beendet werden, ohne alle Anweisungen auszuführen?

Verwenden von 'Ausfahrt' Befehl kann ein Bash-Skript beendet werden, ohne alle Anweisungen auszuführen. Das folgende Skript prüft, ob eine bestimmte Datei existiert oder nicht. Wenn die Datei vorhanden ist, werden die gesamten Zeichen der Datei gedruckt, und wenn die Datei nicht existiert, wird das Skript durch Anzeigen einer Meldung beendet.

Beispiel:

#!/bin/bash

# Initialisieren Sie den Dateinamen mit der Variablen $filename
Dateiname='kurs.txt'

# Überprüfen Sie, ob die Datei vorhanden ist oder nicht, indem Sie die Option -f verwenden
wenn [ -F '$Dateiname' ];dann
# Nachricht drucken, wenn die Datei vorhanden ist
rauswerfen '$Dateinameexistiert'
anders
# Nachricht drucken, wenn die Datei nicht existiert
rauswerfen '$Dateinameexistiert nicht'
# Beende das Skript
Ausfahrt 1
Sein

# Zählen Sie die Länge der Datei, wenn die Datei existiert
Länge=``Toilette -C $Dateiname``

# Drucken Sie die Länge der Datei
rauswerfen 'Gesamtzeichen -$länge'

#23. Was sind die Verwendungszwecke von break- und continue-Anweisungen in der bash?

brechen -Anweisung wird verwendet, um eine Schleife zu beenden, ohne die vollständige Iteration basierend auf einer Bedingung abzuschließen und fortsetzen -Anweisung wird in einer Schleife verwendet, um einige Anweisungen basierend auf einer Bedingung auszulassen. Die Verwendungen von brechen und fortsetzen Anweisungen werden im folgenden Beispiel erläutert.

Beispiel:

#!/bin/bash
# Initialisiere die Variable $i auf 0, um die Schleife zu starten
ich=0
# die Schleife wird 10 mal wiederholt
während [ $i -das 10 ]
tun
# Erhöhe den Wert $i um 1
((ich++))
# Wenn der Wert von $i gleich 8 ist, dann beende die Schleife mit der 'break'-Anweisung
wenn [ $i -eq 8 ];dann
brechen;
Sein
# Wenn der Wert von $i größer als 6 ist, lassen Sie die letzte Anweisung der Schleife weg
# durch die Verwendung der Continue-Anweisung
wenn [ $i -geben Sie 6 ];dann
fortsetzen;
Sein
rauswerfen 'der aktuelle Wert von i =$i'
getan

# Geben Sie den Wert von $i aus, nachdem Sie die Schleife beendet haben
rauswerfen 'Nun ist der Wert von i =$i'

# 24. Wie mache ich eine Bash-Datei ausführbar?

Ausführbare Bash-Dateien können erstellt werden mit 'chmod' Befehl. Die ausführbare Berechtigung kann mithilfe von . festgelegt werden '+X' in chmod Befehl mit dem Skriptdateinamen. Bash-Dateien können ohne die explizite ausgeführt werden 'bash' Befehl nach dem Setzen des Ausführungsbits für diese Datei.

Beispiel:

# Setzen Sie das Ausführungsbit
$chmod+ x Dateiname.sh

# Führen Sie die ausführbare Datei aus
$./Dateiname.sh

#25. Erwähnen Sie einige Optionen, die zum Testen von Dateien verwendet werden

In der Bash-Datei stehen viele Optionen zur Verfügung. Einige Optionen werden unten erwähnt.

Möglichkeit Beschreibung
-F Es wird verwendet, um zu testen, ob die Datei existiert und es sich um eine normale Datei handelt.
-Und Es wird nur verwendet, um zu testen, ob die Datei existiert.
-R Es wird verwendet, um zu testen, ob die Datei existiert und über Leseberechtigung verfügt.
-in Es wird verwendet, um zu testen, ob die Datei existiert und es muss Schreibberechtigung haben.
-x Es wird verwendet, um zu testen, ob die Datei existiert und über die Ausführungsberechtigung verfügt.
-D Es wird verwendet, um zu testen, ob das Verzeichnis existiert.
-DAS Es wird verwendet, um zu testen, ob die Datei existiert, und es ist ein symbolischer Link.
-S Es wird verwendet, um zu testen, ob die Datei existiert, und es ist ein Socket.
-B Es wird verwendet, um zu testen, ob die Datei ein Blockgerät ist.
-S Es wird verwendet, um zu überprüfen, ob die Dateigröße nicht Null ist.
-z.B Es wurde verwendet, um zu überprüfen, ob der Inhalt der ersten Datei neuer ist als die der zweiten. Datei1 -nt Datei2 gibt beispielsweise an, dass Datei1 neuer ist als Datei2.
-ot Es wurde verwendet, um zu überprüfen, ob der Inhalt der ersten Datei älter ist als die der zweiten. Beispielsweise zeigt file1 -ot file2 an, dass file1 älter als file2 ist.
-ef Es wird verwendet, um zu überprüfen, ob zwei Hardlinks auf dieselbe Datei verweisen. Zum Beispiel zeigt flink1 -ef flink2 an, dass flink1 und flink2 Hardlinks sind und beide auf dieselbe Datei verweisen.

#26. Was ist mit „bc“ gemeint und wie kann dieser Befehl in der bash verwendet werden?

Die Vollform von 'bc' ist Bash-Rechner um arithmetische Operationen in der bash genauer auszuführen. Der Nachkommateil wird weggelassen, wenn eine arithmetische Operation in bash mit ausgeführt wird 'Ausdruck' Befehl. Der Nachkommateil kann auch gerundet werden mit Skala Wert mit 'bc' Befehl.

Beispiel:

#!/bin/bash
# Berechnen Sie die Division ohne den Bruchwert
rauswerfen '39 / 7' | bc

# Berechnen Sie die Division mit dem vollen Bruchwert
rauswerfen '39 / 7' | bc -das

# Berechnen Sie die Division mit drei Nachkommastellen
rauswerfen 'Skala=3; 39/7' | bc

# 27. Wie kann man in der Bash eine bestimmte Zeile einer Datei drucken?

Es gibt viele Möglichkeiten, eine bestimmte Zeile in bash zu drucken. Wie zum 'awk','sed' und 'Schwanz' Befehle zum Drucken einer bestimmten Zeile einer Datei in der bash verwendet werden können, wird im folgenden Beispiel gezeigt.

Beispiel:

#!/bin/bash

# Lesen und speichern Sie die erste Zeile aus der Datei, indem Sie den Befehl `awk` mit der NR-Variablen verwenden
Linie 1=``awk '{if(NR==1) $0 drucken}'kurs.txt``
# Drucken Sie die Zeile
rauswerfen $line1

# Lesen Sie die zweite Zeile aus der Datei, indem Sie den Befehl `sed` mit der Option -n verwenden
Zeile 2=``sed -n2p kurs.txt``
# Drucken Sie die Zeile
rauswerfen $line2

# Lesen Sie die letzte Zeile aus der Datei mit dem Befehl `tail` mit der Option -n
Linie3=``Schwanz -n 1kurs.txt``
# Datei ausdrucken
rauswerfen $line3

#28. Was ist IFS?

IFS ist eine spezielle Shell-Variable. Die vollständige Form von IFS ist internes Feldtrennzeichen,
es dient als Trennzeichen, um das Wort von der Textzeile zu trennen. Es wird hauptsächlich zum Aufteilen einer Zeichenfolge, zum Lesen eines Befehls, zum Ersetzen von Text usw. verwendet.

Beispiel:

#!/bin/bash
# Deklarieren Sie ':' als Trennzeichen zum Aufteilen des Textes
IFS=':'
# Textdaten mit ':' zu $text zuweisen
Text='Rot grün blau'
# for-Schleife liest jedes Wort nach der Aufteilung des Textes basierend auf IFS
zumStundenin $text;tun
# Drucken Sie das Wort aus
rauswerfen $ Stunden
getan

# 29. Wie finde ich die Länge einer String-Daten heraus?

„expr“, „wc“ und 'Awk' Befehle können verwendet werden, um die Länge eines String-Datensatzes in der Bash herauszufinden. 'Ausdruck' und 'Awk' Befehle verwenden Länge Möglichkeit, 'Toilette' Befehl verwendet '-C' Option zum Zählen der Länge der Zeichenfolge.

Beispiel:

Die Verwendung der obigen Befehle wird im folgenden Skript gezeigt.

#!/bin/bash
# Zählen Sie die Länge mit der Längenoption `expr`
rauswerfen ``ausdruckLänge„Ich mag PHP“``
# Zählen Sie die Länge mit dem Befehl `wc`
rauswerfen „Ich mag Bash“ | Toilette -C
# Zählen Sie die Länge mit dem Befehl `awk`
rauswerfen „Ich mag Python“ | awk '{Drucklänge}'

#30. Wie kann ich mehrere Bash-Skripte parallel ausführen?

Mehrere Bash-Skripte können parallel ausgeführt werden mit nohup Befehl. Wie mehrere Bash-Dateien parallel aus einem Ordner ausgeführt werden können, zeigt das folgende Beispiel.

Beispiel:

# Weisen Sie einen Ordnernamen mit dem Pfad in der Variablen $dir zu, die enthält
# mehrere Bash-Dateien
dir='home/Ubuntu/temp'

# for-Schleife liest jede Datei aus dem Verzeichnis und wird parallel ausgeführt
zumSkriptindir/ *.NS
tun
nohup bash '$Skript' &
getan

Abschluss:

Die meisten grundlegenden Bash-Skript-Interview-Fragen werden in diesem Artikel für die Leser beschrieben, die eine Karriere als Bash-Programmierer beginnen möchten.