UNIX-tty-Befehl und den Befehl Datei?
Ich bin neu auf UNIX-und wenn ich ein Buch Lesen über UNIX, stieß ich auf folgende zwei Probleme, die ich nicht Verstand. Ich würde wirklich zu schätzen Ihre Hilfe.
1) Sehen Sie die man-Seite für den Befehl Datei, und verwenden Sie dann auf alle Dateien im /dev-Verzeichnis. Können Sie gruppieren Sie diese Dateien in zwei Kategorien?
2) Führen Sie die tty-Befehl ein, und notieren Sie den Namen des Gerätes auf Ihrem terminal. Jetzt verwenden Sie diese Gerätenamen(/dev/pst/6) in dem Befehl cp /etc/passwd /dev/pts/6. was kann man beobachten?
- Können Sie erklären, was Sie HABEN und NICHT verstehen, über diese Fragen?
- Die Frage hat die Antwort. Befolgen Sie einfach die genannten Schritte.
- Danke für die schnellen Antworten. Auf die erste Frage, ich bin mir nicht einmal sicher, was die Frage zu Fragen, und was sollte ich die Gruppe in zwei Kategorien. Auf die zweite Frage, wenn ich Folgen Sie den Schritten erwähnt, ist es ausgegeben, so viele Zeilen von Informationen, die ich nicht verstehe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Berechtigte Frage, wirklich... es ist so einfach für uns, die nehmen so viel für selbstverständlich halten.
Lesen Sie die Handbuchseite für den Befehl aufgerufen
file
geben......das wird eine Menge von Informationen, die wahrscheinlich ziemlich verwirrend, aber man gewöhnt sich das Zeug ziemlich schnell, wenn Sie halten Sie es. Entscheidend ist, dass
file
ist ein Programm, das versucht, die Kategorisierung der Dateien, die Sie bitten, es zu. Wenn Sie Typ......, das tun, was die gestellte Frage, und rufen Sie die Datei mit einer Liste der Dateien im /dev/- Unterverzeichnis. Die Liste ist tatsächlich bereit, die von der "shell" - Programm, das Sie eintippen, die dann führt die Datei-Programm und übergibt ihm die Liste.
file
dann einige Ausgänge Beschreibung der Dateien. Auf meinem computer, und wo[SHELL-PROMPT]
wird auf Ihrem computer anders sein, ich tippte Datei /dev/* und ein Teil der Ausgabe aussah:Gibt es ein Dateisystem-Eintrag für jedes Verzeichnis/Datei-Kombination (bekannt als path) in der linken Spalte, und die Datei, die den Inhalt beschreiben in der rechten. Diese Beschreibungen können nicht viel Sinn machen, aber Sie können sehen, dass einige Muster: einige Einträge sind "block special", die anderen "besonderen Charakter", einige sind Verzeichnis, das bedeutet, Sie finden möglicherweise weitere Dateien unterhalb (d.h.
ls /dev/net/*
). Die zahlen nach dem "speziellen" Dateien sind Betriebssystem-Bezeichner zur Unterscheidung der erwähnten Dateien. Der import von dafür ist, dass Eingabe-und Ausgabe einiger Geräte an den computer angeschlossen wird, möglich als wenn Sie das Gerät war eine Datei im Dateisystem. Das "Datei" - Abstraktion wird als ein Allgemeines Modell für Eingabe und Ausgabe. Also, /dev/tty ist beispielsweise tty - oder terminal - Gerät. Alle Daten, die Sie zu Lesen versuchen von dort aus auch tatsächlich genommen werden, von der Tastatur, die Sie verwenden, um geben Sie in der shell (im einfachen Fall), und alles, was Sie schreiben, es wird sichtbar in dem gleichen terminal den Sie eingeben in. /dev/null ist ein weiterer interessant: Sie kann Lesen und schreiben, aber es ist eine imaginäre Sache, die eigentlich nie stellt Daten (nur gibt und End-of-File-Bedingung, und wirft Weg alle Daten in es geschrieben). Sie können Lesen aus /dev/random und es werden, erzeugen zufällige Werte jedes mal... gut, wenn Sie brauchen, Zufallszahlen oder Datei-Inhalte für die Verschlüsselung oder irgendeine Art von statistischen arbeiten.Durch Eingabe von "tty" Sie können Fragen, für das Gerät was Ihr in der Klemme...
Aber, ich sagte nur /dev/tty ist ein anderer name für die gleiche Sache, so gibt es normalerweise keine Notwendigkeit für die Verwendung der "tty" - Programm zu finden, diese spezifischeren Namen. Noch, wenn Sie ein paar terminal-Fenster auf Ihrem Rechner und geben Sie den tty-in jedem, Sie werden sehen, dass jede Schale verbunden ist, um ein anderes pseudo-terminal-Gerät. Noch, jede shell und Programm von der shell - können standardmäßig auch unter Ihren eigenen terminal-input-und output-device als /dev/tty... es ist eine praktische, kontextsensitive Namen. Der Befehl...
...wobei Sie statt 6 mit dem, was Ihre tty-Programm berichtet (z.B. 11 in meinem Fall), macht das gleiche wie...
...es liest den Inhalt der Datei /etc/passwd und schreibt Sie auf Ihrem Bildschirm. Nun, das problem ist, dass /etc/password sieht aus wie eine Menge von unverständlichen junk, um die Durchschnittliche person, es ist kein Wunder, Sie konnte nicht verstehen, was passiert war. Versuchen Sie, diese anstelle...
...und du wirst sehen, wie direkt einige spezifische, erkennbare Inhalte in eine neue Datei (in diesem Fall, dass es in den tmp "ein temporäres" Verzeichnis (die Datei wird verschwinden, wenn Sie starten Sie Ihren PC), dann kopieren, die Datei-Inhalte wieder auf dem Bildschirm.
(Wenn Sie sich angemeldet haben, in zwei terminal-Fenster, können Sie sogar gehen Sie in eine Schale und kopieren Sie die Datei /dev/pts/NN-Gerät gemeldet, von der anderen Schale, effektiv senden einer Nachricht an das andere Fenster. Sie können sogar bypass-Datei und
echo 'boo' > /dev/tty/NN
. Sie werden nur Berechtigungen haben, um dies zu tun, wenn die gleichen Benutzerkennung angemeldet ist sowohl für windows).