[Für Black-Screen-Phobie] Ich möchte etwas über Linux und Shells wissen, deshalb habe ich sie lose illustriert.

Einführung

Dies ist die Datei, die ich dieses Mal erstellen möchte.

200216_01.png

Es ist "** Batch ** nur ** sendet JSON an den App-Server, wenn es ausgeführt wird **".

Verwenden Sie den Befehl curl! Ich war jedoch der erste, der einen Stapel (→ Shell-Datei) erstellt hat, geschweige denn den Befehl curl. Daher habe ich den Touch-Teil der Shell- und Linux-Befehle untersucht.

Als eine Person, die schon seit einiger Zeit HTML, CSS und Java berührt, sind Linux-Befehle Super-Anfänger! Ich war überrascht, wie unterschiedlich es war, deshalb werde ich es als Memorandum zusammenfassen.

Da ich unschuldig das Protokollverzeichnis "-rm -r" habe, bin ich nicht gut darin, schwarze Bildschirme zu Tode zu zeigen, aber ich habe nicht das Gefühl, dass ich mich ein wenig versöhnen konnte, als ich einen Stapel gemacht habe, sodass meine Eltern durch den schwarzen Bildschirm getötet wurden. Ich hoffe, es wird Ihnen helfen, die verbrannten Menschen zu verstehen.

In diesem Artikel erkläre ich kurz die folgenden Inhalte für Menschen, die das Wort Kernel oder Shell nicht kennen.

--Linux Kernel --Schale --Shell-Skript

Vor dem Erlernen der Shell: Was ist der Kernel und die Shell?

Eine Shell ist ** Software **, die mit dem Linux-Kernel verbunden ist.

… Linux Kernel?

==========

→ Lesen Sie A, wenn Sie denken "Linux-Kernel? Es ist der Kern des Linux-Betriebssystems, der Hardware wie CPU und Prozessmanagement wie Befehlsausführung verwaltet?"

→ Wenn Sie denken "Linux-Kernel? Was ist das?", Lesen Sie B.

==========

A: Ich kenne den Linux-Kernel! Diejenigen, die sagen, dass sie in Zukunft keine Zeit mehr haben werden, 3000 Zeichen zu lesen, gehen Sie bitte zurück zum Browser oder schreiben Sie Informationen über köstliche Ramen-Läden auf dem Reisfeld!

B: Lass uns diesen Artikel lesen und zusammen lernen! !! !! !!

==========

Auch hier ist der Linux-Kernel der Kern des Linux-Betriebssystems, das Hardware wie die CPU und Prozesse wie die Befehlsausführung verwaltet. (Ich denke, dass andere Betriebssysteme als Linux auch Kernel und Shells haben, aber dieses Mal habe ich Linux OS book gelesen, also werde ich über die Annahme von Linux sprechen ... !)

200216_02.png

Der Linux-Kernel kann nicht durch direkte Befehlseingabe bedient werden. Die Shell dient als Benutzeroberfläche zum Ausführen von Befehlen und zum Festlegen von Eingabe- / Ausgabezielen.

Wenn Sie beispielsweise das macOS-Terminal öffnen (schwarzer Bildschirm), werden standardmäßig die folgenden Wörter angezeigt.

Last login: Sun Feb 16 15:49:26 on hogehoge
hoge@localhost ~ % 

Dies ist die Eingabeaufforderung, die die Shell anzeigt. Software namens Shell wartet auf Befehlseingabe. (Das oben verwendete macOS Catalina. Die Standard-Shell ist zsh. Die Eingabeaufforderungsanzeige lautet "~ $" für Bash, und der Teil des Benutzernamens und des Hostnamens unterscheidet sich je nach Terminal.

Was ist ein Shell-Skript?

Sie können das macOS-Terminal oder den "schwarzen Bildschirm" eines freien Terminalemulators (z. B. Tera Term) verwenden, um der Shell direkt über die Befehlszeile Anweisungen zu geben (** interaktive Operation **, interaktive Operation).

Andererseits können Sie, wie bei vielen Programmiersprachen, auch Shell-Befehle im Voraus in eine Datei schreiben und diese durch Lesen der Datei starten. Die auf diese Weise vorbereitete Datei wird als Shell-Skript bezeichnet.

Wie in der obigen Abbildung dargestellt, gibt es verschiedene Arten von Shells wie sh, bash, csh, dash, zsh [https://ja.wikipedia.org/wiki/Unix%E3%82%B7%E3%] Es gibt 82% A7% E3% 83% AB #% E5% 88% 86% E9% A1% 9E).

In "New Linux Textbook" wird sh oder bash derzeit hauptsächlich als Shell-Skript verwendet, aber bash wird aus den folgenden Gründen empfohlen. Das ist.

--sh hat für jede Linux-Distribution eine etwas andere Implementierung [^ 1]

Außerdem scheint der Befehl curl, den ich dieses Mal verwenden möchte, [Sie müssen den Befehl eval für sh einfügen] sein (https://qiita.com/yoshikingt/items/58493af94d41dff348d6). Es ist frustrierend, also denke ich, dass Bash besser ist, wenn Sie einfach loslegen möchten!

[^ 1]: Es ist ein Linux-Paket, das ich hier nicht näher erläutern werde. Neben dem Linux-Kernel sind Befehle und Anwendungen enthalten, die von Anfang an verwendet werden können, und jede unterscheidet sich geringfügig. Selbst wenn Sie denselben Manga kaufen, unterscheiden sich die Postkarten, Aufkleber, Figuren usw., die mit den Vorteilen verbunden sind, geringfügig je nach dem von Ihnen gekauften Geschäft. Die spezifischen Namen, die Sie oft hören, sind Ubuntu, CentOS usw.

Charge und Schale

Ich sage komplett Shell Shell, "Übrigens, warum sagst du nicht, dass du am Anfang eine" Charge "gemacht hast? Wo ist die Charge geblieben? Ist die Charge und die Schale gleich? "" Tsukkomi kam von jemandem in meinem Herzen.

Übrigens wurde ich gebeten, selbst einen "Batch" zu erstellen, aber ich habe tatsächlich eine Shell erstellt (ein Shell-Skript mit Bash), na und? ist geworden.

Nach dem, was wir bisher gesehen haben, hat "Shell" die folgenden Bedeutungen.

  1. Schnittstellensoftware, die den Kernel umschließt
  2. Abkürzung für Shell-Skript (allgemeiner Begriff für sh, bash, zsh usw.)
  3. Einer der Shell-Typen, "sh" (in Kurzform Bourne Shell genannt)

200217_01.png

In ähnlicher Weise hat "Charge" viele Bedeutungen.

1. Stapelverarbeitung

So führen Sie einen Programmstrom (Jobs) nacheinander auf einem Computer aus. Ein Computerbegriff, der angibt, dass ein vorgegebener Prozess sofort ausgeführt wird. Gegenüberliegende Wörter sind interaktive / interaktive oder Echtzeitverarbeitung. Stapelverarbeitung-Wikipedia

Während der Vorgang des "Eingebens eines Befehls direkt in die Shell vom" schwarzen Bildschirm "", der zuvor ausgegeben wurde, eine ** interaktive Operation ** war, besteht die ** Stapelverarbeitung ** darin, eine vorbestimmte Verarbeitung sofort durchzuführen. Zeigen auf. Mit anderen Worten, das Starten eines Shell-Skripts unter vorgegebenen Bedingungen und das Durchführen der Verarbeitung ist auch "Stapelverarbeitung".

200217_02.png

(Die Abbildung ist nur ein Bild. Normalerweise glaube ich nicht, dass ich einen Job mit verschiedenen Erweiterungen machen werde ...)

2. Batch-Datei

Eine Textdatei, die die Befehlssequenz beschreibt, die Sie an der Eingabeaufforderung (Shell) unter MS-DOS, OS / 2 und Windows ausführen möchten. [Batch-Datei-Wikipedia](https://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%83%81%E3%83%95%E3%82%A1% E3% 82% A4% E3% 83% AB)

Dies ähnelt funktional einem Shell-Skript. Obwohl es ein Begleiter als Skriptsprache ist, handelt es sich um eine Batchdatei ≠ Shell-Skriptdatei. Vergleichen wir als Beispiel eine sehr einfache Hello World.

Hallo Welt in Batch-Datei
@echo off
echo Hello World
pause > nul
Hallo World of Shell-Skript (Bash)
#!/bin/bash
echo "Hello World"
exit 0

Es gibt einige ähnliche Befehle, wie z. B. den Befehl echo, aber Sie können sehen, dass es sich grundsätzlich um verschiedene Sprachen handelt. Ich auch ls an der Eingabeaufforderung und werde [oft] ein Schlüssel (https://qiita.com/kfjt/items/a51fa60eb8f568f16a58).

Der supereinfache Weg zu erkennen ist, dass die Erweiterungen unterschiedlich sind.

--Batchdatei: .bat --Shell-Skriptdatei: .sh

Richtig? Ist es nicht einfach (Bitte frag mich nicht genauer, ich werde weinen)

abschließend

o (・ \ _ ・ = ・ _ ・) o <Sind ~? Curl-Befehl Wo ~?

Erklären Sie anschließend Häufig verwendete Linux-Befehle, erläutern Sie den Befehl curl, erläutern Sie einige Optionen und erstellen Sie ihn tatsächlich. Ich wollte den Ort vorstellen, an dem ich süchtig war ...

Die Anzahl der Zeichen hat sich bereits erhöht, daher werde ich diesmal hier aufhören!

Trotzdem habe ich UNIX und Distribution ziemlich viel geschrieben, also bin ich interessiert. Einige Leute versuchen, zum Link zu springen!

Danke fürs Lesen.

Recommended Posts

[Für Black-Screen-Phobie] Ich möchte etwas über Linux und Shells wissen, deshalb habe ich sie lose illustriert.
Ich möchte wissen, wie LINUX funktioniert!
[Erwerb der Qualifikation] Ich habe LinuC Level 1 bestanden und werde darüber schreiben, wie man studiert und wie es war.
Ich möchte die Natur von Python und Pip kennenlernen
Ich möchte die Legende der IT-Technologiewelt kennenlernen
[Linux] Ich möchte das Datum wissen, an dem sich der Benutzer angemeldet hat
Ich möchte eine Pipfile erstellen und im Docker wiedergeben
(Anfänger) Ich bin mir über den SSH- und Linux-Befehl ssh-keygen nicht sicher, also habe ich es zusammengefasst.
Ich möchte mehr über einzelne Entwickler erfahren. YouDev wurde veröffentlicht.
Ich möchte Linux auf dem Mac verwenden
Treten Sie Azure mit Go ~ bei Für diejenigen, die Azure mit Go ~ starten und kennenlernen möchten
Ich möchte ein Element mit numpy in eine Datei schreiben und es überprüfen.
Ich möchte horizontalen Text in vertikalen Text konvertieren und auf Twitter usw. veröffentlichen.
Docker x Visualization hat nicht funktioniert und ich war süchtig danach, also habe ich es zusammengefasst!
Beachten Sie, dass ich süchtig danach war, TensowFlow einzurichten