Questa guida allo studio è errata sui comandi per determinare i tipi di file?


10

La guida allo studio LPIC-1 Guida alla formazione e alla preparazione (Ghori Asghar, ISBN 978-1-7750621-0-3) contiene la seguente domanda ...

Quale dei seguenti comandi può essere utilizzato per determinare il tipo di file?

  • (UN) file
  • (B) type
  • (C) filetype
  • (D) what

... e afferma che la risposta è: "(B) type".

Ma "(A) file" non è la risposta corretta?

Sto iniziando a dubitare dell'intero libro.


11
Devo dire che un libro che inizia dicendo "gli esami sono basati su RHEL e Debian, quindi usiamo CentOS e Ubuntu" non ispira fiducia!
Stephen Kitt,

Dovresti contattare l'autore e informarlo dell'errore.
dr_13

Risposte:


10

Sì, sembra che il tuo libro sia sbagliato.

Il filecomando dice che tipo di file è. Dal file man: "file - determina il tipo di file".
Alcuni esempi:

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

Il typecomando viene utilizzato per dire se un comando è incorporato o esterno:

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

6
typeè un builtin sulla maggior parte delle shell, che ci dice che cosa può essere eseguito (builtin, alias, funzione, eseguibile, ecc.). Nel tuo caso sta dicendo che non c'è niente test.shche può essere eseguito (sia in PATH, sia come builtin / function / alias, ecc.).
Muru,

Hai assolutamente ragione. Non l'ho mai saputo. Non cambia la risposta dovrebbe essere fileperò. Aggiornerò la mia risposta.
Mikael Kjær,

Grazie per la risposta, sono felice di aver piratato il libro lol
Linux Lover il

2

Il tipo di file viene normalmente determinato con file. I suoi manstati:

file: determina il tipo di file

Ma puoi anche usarlo in una certa misura type. Confronta i due elenchi di seguito per:

  • script.pl, uno script Perl
  • not_a_script, un file vuoto

Eccone uno per lo script:

$ 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

Ed eccone uno per il file vuoto:

$ 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

Come puoi vedere, typepuoi determinare se un file è eseguibile. È una "determinazione del tipo di file" o no? Bene ... In un modo diverso da ciò che filefornisce. La descrizione dell'integrato typenell'uomo di Bash è la seguente:

digitare [-aftpP] nome [nome ...]

Senza opzioni, indica come ogni nome verrebbe interpretato se utilizzato come nome comando.

La risposta corretta alla domanda nel libro dovrebbe essere secondo me file, perché è quello che mandice, ed è di questo che si tratta di superare i test. O in altre parole, la mia prima scelta è file.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.