26 Fragen und Antworten zum Shell-Scripting-Interview, die Sie unbedingt lesen müssen [Für Neueinsteiger und Erfahrene]
Veröffentlicht: 2020-12-17Eine Shell ist ein Befehlszeileninterpreter oder eine vollständige Umgebung zum Ausführen von Befehlen, Shell-Skripten und Programmen. Sobald Sie Befehle in die Shell eingeben, wird das Programm basierend auf Ihrer Eingabe ausgeführt.
Im Wesentlichen übersetzt es die Eingabebefehle und konvertiert sie in eine Kernel-kompatible Sprache. Ein Shell-Skript bezieht sich auf eine Liste von Befehlen in einem Programm, das von der Unix-Shell ausgeführt wird. Das Skript enthält Kommentare, die die Befehle in der Reihenfolge ihrer Ausführungsreihenfolge definieren.
Wenn die Einführung Sie dazu bringt, mehr über Shell Scripting zu erfahren, scrollen Sie weiter bis zum Ende – wir haben eine Liste mit Fragen und Antworten zu Shell Scripting-Interviews zusammengestellt, um Ihren Lernprozess anzukurbeln! Wenn Sie mehr über Data Science erfahren möchten, sehen Sie sich unsere Data Science-Kurse an.
Inhaltsverzeichnis
Fragen und Antworten zum Shell-Scripting-Interview
- Was sind die Vorteile von Shell-Scripting?
Die größten Vorteile von Shell Scripting sind:
- Damit können Sie ein benutzerdefiniertes Betriebssystem erstellen, das Ihren Anforderungen am besten entspricht.
- Damit können Sie Softwareanwendungen basierend auf der von Ihnen verwendeten Plattform entwerfen.
- Es ist zeitsparend, da es hilft, Systemverwaltungsaufgaben zu automatisieren.
2. Was sind Shell-Variablen?
Shell-Variablen bilden den Kernteil eines Shell-Programms oder -Skripts. Die Variablen ermöglichen es Shell, Informationen innerhalb eines Shell-Programms zu speichern und zu manipulieren. Shell-Variablen werden im Allgemeinen als String-Variablen gespeichert.
3. Listen Sie die Variablentypen auf, die beim Shell-Scripting verwendet werden.
Normalerweise hat ein Shell-Skript zwei Arten von Variablen:
- Systemdefinierte Variablen – Sie werden vom Betriebssystem (Linux) erstellt und in Großbuchstaben definiert. Sie können sie mit dem Set-Befehl anzeigen.
- Benutzerdefinierte Variablen – Diese werden von Systembenutzern erstellt und definiert. Sie können die Variablenwerte mit dem Echo-Befehl anzeigen.
- Wie kann man eine Variable unveränderlich machen?
Sie können eine Variable mit Read-Only unveränderbar machen. Angenommen, Sie möchten, dass der Wert der Variablen „a“ bei fünf bleibt und konstant bleibt, also verwenden Sie readonly wie folgt:
$a=5
$ schreibgeschützt a
- Nennen Sie die verschiedenen Arten von Muscheln.
Es gibt vier Kerntypen von Shells, nämlich:
- Bourne-Muschel (sh)
- C-Shell (csh)
- Korn-Shell (ksh)
- Bourne Again Shell (bash)
- Erklären Sie „Positionsparameter“.
Positionsparameter sind Variablen, die von einer Shell definiert werden. Sie werden verwendet, um Informationen an das Programm zu übergeben, indem Argumente in der Befehlszeile angegeben werden.
- Wie viele Shells und Kernels sind in einer UNIX-Umgebung verfügbar?
Typischerweise hat eine UNIX-Umgebung nur einen Kernel. Es sind jedoch mehrere Shells verfügbar.
- Benötigen Sie einen separaten Compiler, um ein Shell-Programm auszuführen?
Nein, Sie benötigen keinen separaten Compiler, um ein Shell-Programm auszuführen. Da Shell selbst eine Kommandozeile im Shell-Programm ist und diese ausführt.
- Wie ändern Sie Dateiberechtigungen in Shell Scripting?
Sie können Dateiberechtigungen über umask ändern.
- Was tut ein "." (Punkt) am Anfang eines Dateinamens angeben?
Ein Dateiname, der mit einem „.“ beginnt. ist eine versteckte Datei. Wenn Sie versuchen, die Dateien in einer Shell aufzulisten, werden normalerweise alle Dateien außer den versteckten Dateien aufgelistet. Die versteckten Dateien sind jedoch im Verzeichnis vorhanden. Wenn Sie versteckte Dateien anzeigen möchten, müssen Sie den Is-Befehl mit dem „–a“-Flag ausführen.
- Wie erstelle ich eine Verknüpfung unter Linux?
Sie können Verknüpfungen in Linux über zwei Links erstellen:
Fester Link – Diese Links sind mit dem Inode der Datei verknüpft. Sie sind immer im selben Dateisystem wie die Datei vorhanden. Auch wenn Sie die Originaldatei löschen, bleibt der Hardlink davon unberührt.
Softlink – Diese Links sind mit dem Dateinamen verknüpft. Sie können sich auf demselben Dateisystem wie die Datei befinden oder auch nicht. Wenn Sie die Originaldatei löschen, wird der Softlink inaktiv.
12. Nennen Sie die verschiedenen Phasen eines Linux-Prozesses.
Typischerweise durchläuft ein Linux-Prozess vier Phasen:
- Warten – In dieser Phase muss der Linux-Prozess auf die erforderliche Ressource warten.
- Running – In dieser Phase wird der Prozess ausgeführt.
- Stopped – Nach erfolgreicher Ausführung stoppt der Linux-Prozess.
- Zombie – Im letzten Schritt bleibt der Prozess, obwohl er nicht mehr läuft, in der Prozesstabelle aktiv.
- Gibt es einen alternativen Befehl für „echo“?
Ja, tput ist eine Alternative für den Echo-Befehl. Mit dem Befehl tput können Sie steuern, wie die Ausgabe auf dem Bildschirm angezeigt wird.
- Wie viele Blöcke enthält ein Dateisystem?
Ein Dateisystem besteht aus vier Blöcken:
- Superblock – Dieser Block bietet Informationen über den Zustand eines Dateisystems wie Blockgröße, Blockgruppengröße, Nutzungsinformationen, leere/gefüllte Blöcke und ihre jeweilige Anzahl, Größe und Position von Inode-Tabellen usw.
- Bootblock – Dieser Block enthält das Bootstrap-Loader-Programm, das ausgeführt wird, wenn ein Benutzer den Host-Rechner bootet.
- Datenblock – Dieser Block enthält die Dateiinhalte des Dateisystems.
- Inode-Tabelle – UNIX behandelt alle Elemente als Dateien, und alle Informationen zu Dateien werden in der Inode-Tabelle gespeichert.
Muss gelesen werden: Python-Interviewfragen
- Nennen Sie die drei Arbeitsweisen des vi-Editors.
Die drei Betriebsmodi sind:
- Befehlsmodus – Dieser Modus behandelt und interpretiert jede Taste, die von einem Benutzer gedrückt wird, als Editorbefehle.
- Einfügemodus – Sie können diesen Modus verwenden, um einen neuen Text einzufügen, einen bestehenden Text zu bearbeiten usw.
- Ex-Befehlsmodus – Ein Benutzer kann alle Befehle in einer Befehlszeile eingeben.
- Definieren Sie „Steueranweisungen“. Wie viele Arten von Steuerbefehlen sind in einer Shell verfügbar?
Steueranweisungen sind Befehle, mit denen Sie angeben können, wie die verschiedenen Anweisungen in einem Skript ausgeführt werden sollen. Daher besteht ihr Hauptzweck darin, den Steuerungsfluss in einem Shell-Programm zu bestimmen.
Eine Shell hat vier Arten von Steueranweisungen:
- Die Sequenzsteuerungsanweisung erzwingt, dass die Anweisungen in der gleichen Reihenfolge ausgeführt werden, in der sie sich im Programm befinden.
- Auswahl-/Entscheidungssteuerungsanweisung, die es dem Computer ermöglicht, zu bestimmen, welche Anweisung als nächstes ausgeführt werden soll.
- Wiederholungs-/Schleifensteuerungsanweisung, die es dem Computer ermöglicht, eine Gruppe von Anweisungen wiederholt auszuführen.
- Fallkontrollanweisungen werden verwendet, wenn Sie aus einer Reihe von Alternativen wählen müssen.
- Definiere „IFS“.
IFS bezieht sich auf Internal Field Separator. Es ist eine Systemvariable, deren Standardwert Leerzeichen, Tabulator gefolgt von einer neuen Zeile ist. IFS gibt an, wo ein Feld oder Wort in einer Zeile endet und wo ein anderes beginnt.
- Definiere „Metazeichen“.
Eine Shell besteht aus Metazeichen, die Sonderzeichen in einem Datenfeld oder Programm sind, das Informationen über andere Zeichen bietet. Beispielsweise listet der Befehl „ls s*“ in einer Shell alle Dateien auf, die mit dem Zeichen „s“ beginnen.
- Unterscheiden Sie zwischen $* und $@.
Während $* eine vollständige Gruppe von Positionsparametern als einen einzelnen String behandelt, behandelt $@ jedes in Anführungszeichen gesetzte Argument als separates Argument.
Lesen Sie auch: Gehalt für Python-Entwickler in Indien
21. Schreiben Sie die Syntax der While-Schleife in Shell Scripting.
Beim Shell-Scripting wird die While-Schleife verwendet, wenn Sie ihren Befehlsblock mehrmals wiederholen möchten. Die Syntax für die „while“-Schleife lautet:
während [Testbedingung]
tun
Befehle …
fertig
- Wie unterscheiden sich Break- und Continue-Befehle?
Der Break-Befehl wird verwendet, um eine Ausführungsschleife zu verlassen. Sie können den break-Befehl verwenden, um jeden Schleifenbefehl zu verlassen, einschließlich until- und while-Schleifen. Andererseits wird der Continue-Befehl verwendet, um die aktuelle Iteration der Schleife zu verlassen, ohne die vollständige Schleife zu verlassen.
23. Warum verwenden wir die Shebang-Zeile in Shell Scripting?
Die Shebang-Zeile befindet sich am Anfang eines Shell-Skripts/Programms. Es informiert den Benutzer über den Speicherort der Engine, die das Skript ausführt.

Hier ist ein Beispiel für eine Shebang-Linie:
#!/bin/sch
ct $1
- Können Sie mehrere Skripte in einer Shell ausführen?
Ja, es ist möglich, mehrere Skripte in einer Shell auszuführen. Die Ausführung mehrerer Skripte ermöglicht es Ihnen, ein Skript von einem anderen aufzurufen. Dazu müssen Sie den Namen des Skripts angeben, das aufgerufen werden soll, wenn Sie es aufrufen möchten.
- Welchen Befehl sollten Sie verwenden, um zu wissen, wie lange ein System läuft?
Sie müssen den uptime-Befehl verwenden, um zu wissen, wie lange ein System läuft. Hier ist ein Beispiel für den uptime-Befehl:
u/user1/Shell_Scripts_2018> Betriebszeit
- Welchen Befehl sollten Sie verwenden, um die Festplattennutzung zu überprüfen?
Sie können die folgenden drei Befehle verwenden, um die Festplattennutzung zu überprüfen:
- df – Wird verwendet, um den freien Speicherplatz zu überprüfen.
- du – Es wird verwendet, um die verzeichnisweise Festplattennutzung zu überprüfen.
- dfspace – Es überprüft den freien Speicherplatz in Megabyte (MB).
27. Was meinen Sie mit dem Crontab?
Crontab ist die Abkürzung für Cron-Tabelle, wobei Cron ein Job-Scheduler ist, der Aufgaben ausführt. Crontab ist eine Liste von Befehlen, die Sie nach einem Zeitplan ausführen möchten, zusammen mit dem Befehl, mit dem Sie diese Liste verwalten möchten.
28. Wann sollten wir Shell Scripting nicht verwenden?
In diesen Fällen sollten wir Shell Scripting nicht verwenden:
- Wenn die Aufgabe sehr kompliziert ist, wie z. B. das Schreiben einer vollständigen Gehaltsabrechnungslösung, sollten wir Shell Scripting nicht verwenden.
- Wenn der Job ein hohes Maß an Produktivität erfordert, sollten wir Shell Scripting nicht verwenden.
- Wenn der Job mehrere Softwarelösungen erfordert, sollten wir Shell Scripting nicht verwenden.
29. Wie vergleicht man die Strings in einem Shell-Skript?
Wir verwenden den Testbefehl, um Textstrings zu vergleichen. Es vergleicht Textzeichenfolgen, indem es jedes in jeder Zeichenfolge vorhandene Zeichen vergleicht.
Lesen Sie: Interviewfragen für Dateningenieure
30. Was meinen Sie mit einem Dateisystem?
Ein Dateisystem ist eine Sammlung von Dateien zusammen mit Informationen zu diesen Dateien. Es steuert, wie die Daten abgerufen und gespeichert werden. Ohne Dateisysteme wären die im Speicher vorhandenen Daten nur eine große Datenmenge, bei der nicht erkennbar wäre, wo ein Datenelement endet und ein anderes beginnt.
31. Können Sie zwischen einfachen und doppelten Anführungszeichen unterscheiden?
Jawohl. Wir verwenden einfache Anführungszeichen, wenn wir die Auswertung der Variablen nicht zu Werten durchführen möchten. Andererseits verwenden wir doppelte Anführungszeichen, wenn wir die Auswertung der Variablen zu Werten durchführen möchten.
32. Was meinen Sie mit GUI-Scripting?
Wir verwenden GUI, um einen Computer und seine Anwendungen zu steuern. Durch GUI-Scripting können wir je nach Betriebssystem verschiedene Anwendungen handhaben.
33. Was wissen Sie über den Superblock in Shell-Skripten?
Der Superblock ist ein Programm, das bestimmte Dateisysteme aufzeichnet. Es enthält Merkmale wie die Blockgröße, gefüllte und leere Blöcke mit ihren jeweiligen Zählwerten, den Speicherort und die Größe der Inode-Tabellen, Nutzungsinformationen, die Plattenblockkarte usw.
34. Welche Bedeutung hat die Shebang-Linie?
Die Shebang-Zeile bleibt oben im Skript. Es gibt Auskunft über den Ort, an dem sich die Engine befindet, die das Skript ausführt.
35. Stellen Sie einige der beliebtesten UNIX-Befehle bereit.
Hier sind einige der beliebtesten UNIX-Befehle:
- cd – Der Befehl cd ändert das Verzeichnis in das Home-Verzeichnis des Benutzers, wenn er als $ cd verwendet wird. Sie können es verwenden, um das zu testende Verzeichnis durch $ cd test zu ändern.
- ls – Der Befehl ls listet die Dateien im aktuellen Verzeichnis auf, wenn er als $ ls verwendet wird. Sie können es verwenden, um Dateien im langen Format aufzuzeichnen, indem Sie es als $ ls -lrt verwenden.
- rm – Der Befehl rm löscht die Datei namens fileA, wenn Sie sie als $ rm fileA verwenden.
- cat – Dieser Befehl würde den in einer Datei vorhandenen Inhalt anzeigen, wenn Sie ihn als $ cat filename verwenden.
- mv – Der Befehl mv kann Dateien umbenennen oder verschieben. Beispielsweise würde der Befehl $ mv fileA fileB Dateien namens fileA und fileB verschieben.
- date – Der Befehl date zeigt die aktuelle Uhrzeit und das aktuelle Datum an.
- grep – Der Befehl grep kann nach bestimmten Informationen in einer Datei suchen. Beispielsweise würde der Befehl $ grep Hello fileA nach den Zeilen suchen, in denen das Wort „Hello“ vorkommt.
- finger – Der Befehl finger zeigt Informationen über den Benutzer an.
- ps – Der Befehl ps zeigt die Prozesse an, die derzeit auf Ihrem Computer ausgeführt werden.
- man – Der man-Befehl zeigt die Online-Hilfe oder das Handbuch zu einem bestimmten Befehl an. Beispielsweise würde der Befehl $ ms rm das Online-Handbuch für den Befehl rm anzeigen.
- pwd – Der Befehl pwd zeigt das aktuelle Arbeitsverzeichnis.
- wc – Der Befehl wc zählt die Anzahl der Zeichen, Wörter und Zeilen, die in einer Datei vorhanden sind.
- Verlauf – Der Verlaufsbefehl zeigt die Liste aller Befehle, die Sie kürzlich verwendet haben.
- gzip – Der Befehl gzip komprimiert die angegebene Datei. Beispielsweise würde der Befehl $ gzip fileA fileA komprimieren und in fileA.gz ändern.
- logname – Der Befehl logname würde den Protokollnamen des Benutzers drucken.
- head – Der Befehl head zeigt die ersten in der Datei vorhandenen Zeilen an. Beispielsweise würde der Befehl $ head -15 fileA die ersten 15 Zeilen von fileA anzeigen.
Zusätzliche Anmerkungen: Dies ist eine der wichtigsten Interviewfragen für Shell-Scripting. Wir empfehlen, eine gründlichere Liste von UNIX-Befehlen zu erstellen, da viele Versionen dieser Frage in Interviews gestellt werden.
Muss gelesen werden: Interviewfragen für Data Science
36. Inwiefern ist C Shell besser als Bourne Shell?
C Shell ist aus folgenden Gründen besser als Bourne Shell:
- Mit der C-Shell können Sie die Befehle aliasieren. Das bedeutet, dass der Benutzer einem Befehl einen beliebigen Namen geben kann. Es ist sehr vorteilhaft, wenn der Benutzer einen langen Befehl mehrmals verwenden muss. Anstatt den langen Namen des Befehls mehrmals einzugeben, kann der Benutzer den zugewiesenen Namen eingeben. Es spart viel Zeit und Energie und macht den Prozess viel effizienter.
- C Shell verfügt über eine Befehlsverlaufsfunktion, bei der sich C Shell an alle zuvor verwendeten Befehle erinnert. Sie können diese Funktion verwenden, um zu vermeiden, dass Sie denselben Befehl mehrmals eingeben. Es steigert die Effizienz erheblich.
Aus den beiden oben genannten Gründen ist die Verwendung von C Shell viel vorteilhafter als Bourne Shell.
37. Was ist wichtig, um Shell-Skripte zu schreiben?
Shell-Scripting hat viele Vorteile, die es entscheidend machen. Es nimmt Eingaben von Benutzern entgegen, archiviert sie und zeigt sie auf dem Bildschirm an. Darüber hinaus können Sie Ihre eigenen Befehle erstellen und einfache tägliche Aufgaben automatisieren. Sie können Shell-Scripting auch verwenden, um Systemverwaltungsaufgaben zu automatisieren. Shell-Scripting macht Ihre Prozesse effizienter, indem es Ihnen viel Energie und Zeit spart. Aus diesem Grund ist es sehr wichtig und weit verbreitet.
Fazit
Wir hoffen, dass diese 26 Fragen und Antworten zu Shell Scripting-Interviews Ihnen dabei helfen, das Eis bei Shell Scripting zu brechen und sich auf Ihr nächstes Vorstellungsgespräch vorzubereiten!
Wenn Sie neugierig sind, etwas über Data Science zu lernen, schauen Sie sich das Executive PG Program in Data Science von IIIT-B & upGrad an, das für Berufstätige entwickelt wurde und mehr als 10 Fallstudien und Projekte, praktische Workshops, Mentoring mit Branchenexperten, 1 -on-1 mit Branchenmentoren, mehr als 400 Stunden Lern- und Jobunterstützung bei Top-Unternehmen.
Was ist Shell-Scripting?
Shell-Scripting ist der Prozess des Schreibens von Scripts/Codes zur Automatisierung monotoner Aufgaben. Anstatt die Befehle n-mal hintereinander einzugeben, können Sie ein Skript erstellen, um eine Reihe von Anweisungen zu automatisieren, die nacheinander ausgeführt werden. Die wesentlichen Schritte beim Shell-Skripting bestehen darin, das Skript zu schreiben, es der Shell zugänglich zu machen und der Shell die Ausführungsberechtigung zu erteilen. Shell-Skripte werden in ASCII-Text geschrieben und enthalten ASCII-Text. Sie werden mit einem Texteditor, einer Textverarbeitung oder einer grafischen Benutzeroberfläche (GUI) erstellt. Der Inhalt des Skripts besteht aus einer Folge von Befehlen, die in einer Sprache geschrieben sind, die die Shell verstehen kann. Nach Abschluss wird die Datei mit einer Erweiterung und an einem für die Shell zugänglichen Ort gespeichert.
Was sind die Anwendungen von Shell-Scripting?
Shell-Scripting ist einfach und effektiv. Es verwendet die gleiche Syntax im Skript wie in der Shell-Befehlszeile, wodurch jegliche Mehrdeutigkeit beseitigt wird. Ein Shell-Skript ist praktisch für sich wiederholende Aktivitäten, die durch die Eingabe einer Zeile nach der anderen zu lange dauern würden. Benutzer können Shell-Skripte für eine Vielzahl von Zwecken verwenden, z. B. zum Automatisieren des Prozesses zum Kompilieren von Code, zum Ausführen eines Programms oder zum Einrichten einer Programmierumgebung, zum Vervollständigen des Stapels und zum Bearbeiten von Dateien sowie zum Verbinden vorhandener Programme, zum Ausführen routinemäßiger Sicherungen und zum Überwachen von Systemen.
Ist Shell-Scripting ein guter Beruf?
Shell-Scripting wird in verschiedenen Bereichen wie Automatisierung, Programmierung, Systemadministrationsaufgaben, Anwendungsautomatisierung, Paketeinrichtung, Validierungsautomatisierung, Datensicherung und -wiederherstellung in einem System usw. verwendet. Daher ist Shell-Scripting ein wesentlicher Bestandteil der IT-Abteilung eines jeden Unternehmens . Außerdem ist es während der gesamten IT-Karriere einer Person hilfreich. Mit einem durchschnittlichen Gehalt von ₹6.39.000 pro Jahr ist Shell-Scripting ein guter Beruf mit vielen Perspektiven für seine Lernenden. Die meisten IT-Experten verwenden es jeden Tag für bescheidene automatisierte Aufgaben, da es viel Zeit spart.