Linux-Studiengruppe 1: Virtuelle Konsole und Dateimanipulation

Am 3. Februar fand bei Ancar Co., Ltd. eine interne Studiensitzung statt. Dieser Artikel gibt einen Überblick über das Thema der Studiensitzung.

Bitte beachten Sie, dass der Inhalt "Ich werde mit den Grundlagen von Linux beginnen !!!" lautet.

Jeder Befehl wird mit dem Standard-MacOS-Terminal ausgeführt

Nachtrag

Virtuelle Konsole

Normalerweise können Sie mehrere Verbindungen zu einem Terminal herstellen, aber jedem wird eine "virtuelle Konsole" zugewiesen. Jede virtuelle Konsole heißt "tty? Number" tty ist ein Wort, das von "TeleTYpewriter" abgeleitet ist und sich auf ein Eingabe- / Ausgabegerät zu beziehen scheint. Durch Umschalten des tty können Sie den Vorgang wie das Umschalten auf einen anderen Bildschirm im Terminal realisieren. (Derzeit werden mehrere Konsolenbildschirme gestartet, sodass Schaltvorgänge weggelassen werden.)

Verwenden wir den Befehl tty, um die derzeit verwendete virtuelle Konsole zu überprüfen

$ tty
/dev/ttys000

Ich habe tty000 verwendet Dieses Mal starte ich die Konsole in einem anderen Fenster und drücke "tty"

$ tty
/dev/ttys001

Ich verstehe, dass jede Konsole eine andere Tty hat

Mal sehen mit dem Befehl who

$ who
yungo    console  Feb  9 22:56
yungo    ttys000  Feb 10 10:16
yungo    ttys001  Feb 11 13:46
yungo    ttys002  Feb 11 13:47
yungo    ttys004  Feb 10 20:01
yungo    ttys005  Feb 10 21:14

Derzeit habe ich 5 Konsolen mit dem Benutzernamen "yungo" gestartet, aber jeder wurde tty zugewiesen, wie ich sehe. (Die erste "Konsole" sieht aus wie ein Kernel. Bitte weisen Sie darauf hin, wenn Sie einen Fehler machen.)

Was können Sie also mit einer virtuellen Konsole tun?

etc Dies ist eine Aufgabe, die Sie normalerweise ausführen, indem Sie die Konsole in einem separaten Fenster starten, ohne sich dessen bewusst zu sein (obwohl dies genau die virtuelle Konsole ist).

Ausgabe mit angegebenem tty

$ echo hoge
hoge

Das Echo kehrt normalerweise zu meinem Terminal zurück

$ echo hoge > /dev/tty2

Gibt das Echo an tty2 aus So sieht es auf der Konsole aus ↓ スクリーンショット 2020-02-11 14.56.47.png Das mit tty000 eingegebene Echo wird an die Cursorposition von tty001 ausgegeben


Ändern der Geschichte, von nun an, der zweite Teil, Dateivorgang

Dateivorgang

Einfache Möglichkeit, eine Datei zu erstellen

Es gibt verschiedene einfache Möglichkeiten, eine Datei zu erstellen, ohne den Editor zu starten

1: "Echo" und Weiterleiten

#Erstellen einer einzeiligen Datei
$ echo hogehogehogehoge > file1.txt

#Ich werde den Inhalt überprüfen
$ cat file1.txt
hogehogehogehoge

#Überschreiben, wenn es sich um eine Weiterleitung handelt
$ echo hoge > file1.txt

$ cat file1.txt
hoge

#Es wurde hinzugefügt, dass es sich um eine zusätzliche Weiterleitung handelt
$ echo hoge >> file1.txt

$ cat file1.txt
hoge
hoge

2: cat und umleiten

Ich dachte, dass "cat" nur ein Befehl zum Anzeigen des Inhalts ist, aber durch die Verwendung der Umleitung kann es wie ein (sehr) einfacher Editor verwendet werden, den ich nicht kannte

# [ctrl]+[d]Ende mit
$ cat > file2.txt
hoge
ho
hoge
[ctrl]+[d]

#Ich werde mir den Inhalt ansehen
$ cat file2.txt
hoge
ho
hoge

3:touch Sie können eine leere 0-Byte-Datei erstellen Ursprünglich scheint der Befehl touch ein Befehl zum Aktualisieren des Änderungsdatums und der Uhrzeit einer Datei zu sein ... Ich wusste nicht ...

#Überprüfen Sie das Verzeichnis
$ ls
file1.txt	file2.txt

#Erstellen
$ touch file3.txt

#Überprüfen Sie das Verzeichnis
$ ls
file1.txt	file2.txt	file3.txt

So geben Sie den Dateinamen an

Ich habe den Dateinamen wie "cat file1.txt" von früher angegeben, aber es gibt auch verschiedene Möglichkeiten, dies zu tun.

Platzhalter

Symbol Erläuterung
* Beliebige Zeichenkette. Kann leer sein
? Beliebiges Zeichen
[...] [ ]Beliebiges Zeichen in( -Der Bereich kann mit einem Symbol angegeben werden)
[!...] [ ]Innerhalb. . .Ein beliebiges Zeichen, das nicht in enthalten ist
{ ~ } { }Beliebige Zeichenfolge in(Durch Kommata abgetrennt)

(Ergänzung) {~} scheint nicht im Platzhalter enthalten zu sein Platzhalter wie "*" werden durch den Pfadnamen erweitert, "{~}" wird durch Klammern erweitert und das Verhalten ist unterschiedlich. (Danke an @ angel_p_57 für das Unterrichten!)

Ich werde es im vorherigen Verzeichnis versuchen

#Beliebige Zeichenfolge (*Alles danach)
$ ls file*
file1.txt	file2.txt	file3.txt

#2 oder 3
$ ls file[23].txt
file2.txt	file3.txt

#Sie können auch den Bereich angeben
$ ls file[1-3].txt
file1.txt	file2.txt	file3.txt

#Wortübereinstimmungen
$ ls {file,filo}1.txt
file1.txt	filo1.txt

Es scheint, dass es fast wie ein regulärer Ausdruck verwendet werden kann


Das ist alles für diese Zeit! !!

schließlich

Es gibt viele grundlegende Inhalte, aber ich habe den Eindruck, dass es viele Tricks gibt, die ich nicht einmal über die Befehle wusste, die ich ständig benutze. Ich öffne immer viele Fenster, wenn ich arbeite, aber ich muss auch das Konzept von tty im Auge behalten.

Korrekturen oder Korrekturen sind willkommen. Bitte hinterlassen Sie einen Kommentar!

** LINUX Chot Dekill (im wahrsten Sinne des Wortes) **

Recommended Posts

Linux-Studiengruppe 1: Virtuelle Konsole und Dateimanipulation
Linux-Lernsitzung 2 .: Dateibetrieb
Linux-Lernsitzung 3 .: Einstellung und Suchfunktion zum Löschen von Dateien
Linux-Studiengruppe 5: Verzeichnismanipulation, Links und Inodes
Informationen zu Linux-Datei- und Verzeichnisberechtigungen
[Linux] Datei- und Verzeichnisoperationsbefehle
"OZV Study Group LT" "Linux" Prozess und Priorität mit netten Befehlen zu wissen
[Linux] Befehle zum Komprimieren und Dekomprimieren von ZIP-Dateien [Vim]