GNU/Linux >> Znalost Linux >  >> Linux

Je tato studijní příručka špatná ohledně příkazů pro určování typů souborů?

Ano, zdá se, že vaše kniha je chybná.

file příkaz říká, o jaký druh souboru se jedná. Ze souboru man:"soubor -- určit typ souboru".
Několik příkladů:

$  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)

type příkaz se používá k určení, zda je příkaz vestavěný nebo externí:

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

Typ souboru se obvykle určuje pomocí file . Jeho man uvádí:

soubor — určení typu souboru

Ale můžete také do určité míry použít type . Porovnejte dva níže uvedené výpisy pro:

  • script.pl , skript v Perlu
  • not_a_script , prázdný soubor

Zde je jeden pro 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

A tady je jeden pro prázdný soubor:

$ 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

Jak můžete vidět, type dokáže určit, zda je soubor spustitelný. Je to "určení typu souboru" nebo ne? No... Jiným způsobem než file poskytuje. Popis type vestavěný v Bashově muži je následující:

zadejte [-aftpP] jméno [jméno ...]

Bez možnosti určete, jak by bylo každé jméno interpretováno, kdyby bylo použito jako název příkazu.

Správná odpověď na otázku v knize by podle mého názoru měla být file , protože to je jeho man říká, a o tom je složení testů. Nebo jinými slovy, moje první volba je file .


Linux
  1. 12 Užitečné příkazy pro filtrování textu pro efektivní operace se soubory v Linuxu

  2. Tabulka oprávnění pro soubor/adresář a typy uživatelů souborového systému

  3. grep rekurzivně pro konkrétní typ souboru v systému Linux

  1. Příkazy FreeDOS pro fanoušky Linuxu

  2. Redis datové typy s příkazy:Komplexní průvodce

  3. Linux – Určení konkrétního souboru odpovědného za vysoké I/O?

  1. Studijní cíle pro RHCSA Exam &Preparation Guide

  2. 5 užitečných příkazů pro správu typů souborů a systémového času v Linuxu – část 3

  3. Příkaz souboru Linux