GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ist dieser Studienführer in Bezug auf Befehle zum Bestimmen von Dateitypen falsch?

Ja, es scheint, als wäre Ihr Buch falsch.

Der file Der Befehl gibt an, um welche Art von Datei es sich handelt. Aus der man-Datei:"file -- file type bestimmen".
Ein paar Beispiele:

$  file /usr/bin/file
/usr/bin/file: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ecc4d67cf433d0682a5b7f3a08befc45e7d18057, stripped
$ file activemq-all-5.15.0.jar
activemq-all-5.15.0.jar: Java archive data (JAR)

Die type command wird verwendet, um festzustellen, ob ein Befehl eingebaut oder extern ist:

$ type file
file is /usr/bin/file
$ type type
type is a shell builtin

Der Dateityp wird normalerweise mit file bestimmt . Es ist man Zustände:

file — bestimmt den Dateityp

Sie können aber auch bis zu einem gewissen Grad type verwenden . Vergleichen Sie die beiden folgenden Auflistungen für:

  • script.pl , ein Perl-Skript
  • not_a_script , eine leere Datei

Hier ist eine für das Skript:

$ ls
script.pl
$ file script.pl 
script.pl: Perl script text executable
$ type script.pl
bash: type: script.pl: not found
$ type ./script.pl 
./script.pl is ./script.pl

Und hier ist eine für die leere Datei:

$ ls not_a_script 
not_a_script
$ file not_a_script 
not_a_script: empty
$ type not_a_script
bash: type: not_a_script: not found
$ type ./not_a_script
bash: type: ./not_a_script: not found

Wie Sie sehen können, type kann feststellen, ob eine Datei ausführbar ist. Ist das eine "Bestimmung des Dateityps" oder nicht? Na ja... Anders als bei file bietet. Die Beschreibung des type eingebaut in Bashs man ist wie folgt:

geben Sie [-aftpP] name [name ...]

ein

Geben Sie ohne Optionen an, wie jeder Name interpretiert würde, wenn er als Befehlsname verwendet würde.

Die richtige Antwort auf die Frage im Buch sollte meiner Meinung nach file sein , denn das ist es man sagt, und darum geht es beim Bestehen von Tests. Oder anders gesagt, meine erste Wahl ist file .


Linux
  1. FreeDOS-Befehle für Linux-Fans

  2. 12 nützliche Befehle zum Filtern von Text für effektive Dateioperationen in Linux

  3. Linux – Bestimmung einer bestimmten Datei, die für hohe E/A verantwortlich ist?

  4. Berechtigungstabelle für Datei-/Verzeichnis- und Dateisystem-Benutzertypen

  5. grep rekursiv für einen bestimmten Dateityp unter Linux

Docker-Befehle zum Verwalten des Containerlebenszyklus (Definitive Guide)

14 grundlegende Tar-Befehle in Linux mit Beispielen für Neulinge

4 Stat-Befehle in Linux mit Beispiel für Anfänger

Nützliche Bash-Befehle, die Sie vielleicht nicht kennen

Praktische Linux- und Unix-Tee-Befehle für den Linux-Administrator

Midnight Commander (mc) Guide:Leistungsstarker textbasierter Dateimanager für Unix