Provided by: manpages-es-extra_0.8a-17_all bug

NOMBRE

       file - determina el tipo de ficheros

SINOPSIS

       file [ -vbczL ] [ -f nombrefichero ] [ -m ficheromagico ] fichero ...

DESCRIPCI'ON

       Esta  pagina  del  Manual  documenta la version 3.26 de la orden file .
       File comprueba cada argumento en un intento de clasificarlo.  Hay  tres
       conjuntos  de pruebas, efectuadas en este orden: pruebas de sistemas de
       ficheros, pruebas de numeros  magicos,  y  pruebas  de  lenguajes.   La
       primera prueba que tenga exito hace que se muestre el tipo del fichero.

       El  tipo mostrado contendra usualmente una de las palabras text (texto:
       el fichero contiene  solamente  caracteres  ASCII  y  probablemente  es
       seguro  leerlo  en  una  terminal  ASCII  ), executable (ejecutable: el
       fichero contiene el resultado de la compilacion de un programa  en  una
       forma  comprensible  para  algun  nucleo  UNIX),  o  data  (datos), que
       significa cualquier otra cosa (los datos son normalmente  `binarios'  o
       no  imprimibles).  Las  excepciones  son  los formatos de ficheros bien
       conocidos (volcados de memoria,  archivos  de  tar)  que  se  sabe  que
       contienen    datos    binarios.     Cuando    modifique    el   fichero
       /usr/share/misc/magic o el propio  programa,  conserve  estas  palabras
       reservadas.   Muchos  programas  dependen de que file muestre todos los
       ficheros legibles de un directorio con la palabra  ``text''.   No  haga
       como hicieron en la version de Berkeley, que cambiaron ``shell commands
       text'' (texto con ordenes del shell)  a  ``shell  script''  (guion  del
       shell).

       Las  pruebas  de  sistemas  de  ficheros  se  basan  en un examen de la
       devolucion de una llamada al sistema stat(2).  El programa comprueba si
       el  fichero  esta  vacio,  o  si  es  alguna clase de fichero especial.
       Cualquier tipo de fichero apropiado al sistema donde se este (enchufes,
       enlaces  simbolicos, o tuberias con nombre (FIFOs) en aquellos sistemas
       que las implementen) se intuye  si  esta  definido  en  el  fichero  de
       cabecera del sistema sys/stat.h.

       Las  pruebas  de numeros magicos se emplean para comprobar ficheros con
       datos dispuestos en formatos fijos particulares.  El  ejemplo  canonico
       de  esto  es  un fichero ejecutable binario (programa compilado) a.out,
       cuyo formato se describe en a.out.h y  posiblemente  en  exec.h  en  el
       directorio  normal  de  ficheros de cabecera.  Estos ficheros tienen un
       `numero magico' guardado en una posicion particular cerca del principio
       del fichero, que le dice al sistema operativo UNIX que el fichero es un
       binario ejecutable, y de que tipo de entre unos cuantos. El concepto de
       `numero  magico'  se  ha  aplicado  por  extension a ficheros de datos.
       Cualquier fichero con algun identificador invariante  en  una  posicion
       fija y cercana al principio en el fichero puede normalmente describirse
       de esta forma. La informacion de estos ficheros  se  lee  del  `fichero
       magico' /usr/share/misc/magic.

       Si  un argumento resulta ser un fichero ASCII, file intenta adivinar el
       lenguaje en el que  esta  escrito.   Las  pruebas  de  lenguaje  buscan
       cadenas  de  caracteres particulares (cf.  names.h) que pueden aparecer
       en cualquier lugar dentro de los primeros bloques de un  fichero.   Por
       ejemplo,  la  palabra  clave  .br  indica  que  el fichero es con mucha
       probabilidad un fichero de entrada de troff(1), mientras que la palabra
       struct  puede  indicar  un  programa  en  C.   Estas  pruebas son menos
       confiables que las de los  dos  grupos  anteriores,  de  forma  que  se
       realizan  en ultimo lugar.  Las rutinas de pruebas de lenguajes tambien
       hacen algunas otras comprobaciones (como buscar archivos de  tar(1))  y
       determinan  si  el  mensaje para un fichero desconocido debe ser `ascii
       text' (texto ASCII) o `data' (datos).

OPCIONES

       -v      Muestra la version del programa y acaba.

       -m lista
               Especifica una lista  alternativa  de  ficheros  que  contienen
               numeros  magicos.  Esta  puede constar de un solo fichero, o de
               una lista de ficheros separados por signos de dos puntos.

       -z      Intenta mirar dentro de ficheros comprimidos.

       -b      No precede las lineas de salida con los nombres de los ficheros
               (modo breve).

       -c      Produce  un  listado  de comprobacion de la forma analizada del
               fichero magico. Normalmente esto se emplea en conjuncion con -m
               para depurar un nuevo fichero magico antes de instalarlo.

       -f nombrefichero
               Lee  los nombres de los ficheros a examinar desde nombrefichero
               (uno por linea) antes  de  la  lista  de  argumentos.   O  bien
               nombrefichero  o  bien  por  lo  menos  un argumento que sea un
               nombre de fichero,  debe  estar  presente;  para  comprobar  la
               entrada  estandar,  emplee  `-'  como un argumento de nombre de
               fichero.

       -L      Esta opcion hace que se sigan los enlaces simbolicos,  como  la
               opcion  del  mismo  nombre  de  ls(1)  (en sistemas que admitan
               enlaces simbolicos).

FICHEROS

       /usr/share/misc/magic - lista predeterminada de numeros magicos

ENTORNO

       La variable de entorno MAGIC  se  puede  emplear  para  establecer  los
       ficheros predeterminados con numeros magicos.

V'EASE TAMBI'EN

       magic(4) - descripcion del formato del fichero magico.
       strings(1), od(1), hexdump(1) - herramientas para examinar ficheros que
       no son de texto.

CONFORMANCIA CON EST'ANDARES

       Se cree que este programa excede en comportamiento al descrito por SVID
       en  FILE(CMD), tanto como uno pueda deducir del vago lenguaje contenido
       en dicho documento.  Su comportamiento es mayormente compatible con  el
       programa de System V del mismo nombre. Esta version sabe de mas numeros
       magicos, sin embargo, por lo que producira  una  salida  diferente  (si
       bien mas acertada) en muchos casos.

       La  diferencia  mas significante entre esta version y la de System V es
       que esta version trata cualquier espacio en blanco como un delimitador,
       de  forma que los espacios en cadenas de patrones deben ser protegidos.
       Por ejemplo,
       >10  string    language impress    (imPRESS data)
       en un fichero magico existente tendria que cambiarse a
       >10  string    language\ impress   (imPRESS data)
       Ademas, en esta version,  si  una  cadena  patron  contiene  una  barra
       inclinada invertida, debe ser protegida. Por ejemplo
       0    string         \begindata     Andrew Toolkit document
       en un fichero magico existente tendria que cambiarse a
       0    string         \\begindata    Andrew Toolkit document

       SunOS  en distribuciones 3.2 y siguientes, de Sun Microsystems, incluye
       una orden file(1)  derivada  de  la  de  System  V,  pero  con  algunas
       extensiones.   Mi  version difiere de la de Sun solo en pequenas cosas.
       Incluye la extension del operador `&', empleado como, por ejemplo,
       >16  long&0x7fffffff     >0        not stripped

DIRECTORIO M'AGICO

       Las entradas del fichero magico han sido  tomadas  de  varias  fuentes,
       principalmente  de  USENET, y han contribuido varios autores.  Christos
       Zoulas (su direccion esta mas abajo) recogera  entradas  adicionales  o
       corregidas  del  fichero  magico.   Se  distribuira  periodicamente una
       consolidacion de las entradas del fichero magico.

       El orden de  las  entradas  en  el  fichero  magico  es  significativo.
       Dependiendo  del  sistema que este Ud. usando, el orden en el que esten
       puestas juntas puede ser incorrecto.  Si su vieja orden file emplea  un
       fichero   magico,  mantenga  el  viejo  fichero  magico  por  ahi  para
       comparacion (por ejemplo, renombrelo a /usr/local/share/magic.orig).

HISTORIA

       Ha habido una orden file en cada UNIX desde al menos la  Version  6  de
       Investigacion  (estando fechada la pagina del Manual en Enero de 1975).
       La version de System V introdujo un cambio importante significativo: la
       lista  externa  de tipos con numeros magicos.  Esto ralentizaba algo el
       programa pero lo hacia mucho mas flexible.

       Este programa, basado en la version de System V, ha  sido  escrito  por
       Ian Darwin sin mirar el codigo fuente de nadie.

       John  Gilmore  reviso  extensamente  el codigo, haciendolo mejor que la
       primera version.  Geoff Collyer encontro algunas  cosas  inadecuadas  y
       proporciono  algunas  entradas  del  fichero magico.  Desde entonces el
       programa ha ido evolucionando continuamente.

AUTORES

       Escrito por Ian F. Darwin, direccion UUCP {utzoo  |  ihnp4}!darwin!ian,
       direccion  Internet ian@sq.com, direccion postal: P.O. Box 603, Station
       F, Toronto, Ontario, CANADA M4Y 2L8.

       Alterado por Rob McMahon, cudcv@warwick.ac.uk, en 1989,  para  extender
       el operador `&' de un simple `x&y != 0' a `x&y op z'.

       Alterado por Guy Harris, guy@netapp.com, en 1993, para:

              poner  el operador `&' ``al viejo estilo'' de nuevo como estaba,
              porque 1) el cambio de Rob McMahon rompio con el estilo  de  uso
              anterior,  2)  el operador al ``nuevo estilo'' `&' de SunOS, que
              esta version de file tambien admite, ya maneja tambien  `x&y  op
              z', y 3) el cambio de Rob no estaba documentado en ningun caso;

              anadir multiples niveles de `>';

              anadir  las  palabras clave ``beshort'', ``leshort'', etc., para
              buscar numeros en el fichero en un orden de bytes especifico, en
              vez  de  en  el  orden  de  bytes  nativo  del  proceso que este
              ejecutando a file.

       Cambios por Ian Darwin y varios autores incluyendo  a  Christos  Zoulas
       (christos@astron.com), 1990-1997.

ADVERTENCIA LEGAL

       Derechos de copia (C) Ian F. Darwin, Toronto, Canada, 1986, 1987, 1988,
       1989, 1990, 1991, 1992, 1993.

       Este software no esta sujeto y no puede  hacerse  estarlo  a  cualquier
       licencia  de la Cia. AT&T, Sun Microsystems Inc., Digital Equipment Co.
       Inc. (Compaq), Lotus Development Inc., los Regentes de  la  Universidad
       de California, el Consorcio X ni MIT, ni la FSF (Fundacion del Software
       Libre).

       Este software no esta sujeto a ninguna restriccion de  exportacion  del
       Departamento de Comercio de EE.UU., y puede exportarse a cualquier pais
       o planeta.

       Se permite a cualquiera usar este software para cualquier proposito  en
       cualquier  sistema computador, y alterarlo y redistribuirlo libremente,
       sujeto a las siguientes restricciones:

       1. El autor no es responsable de las  consecuencias  del  uso  de  este
       software,  sin  importar  cuan  malas  fueren, incluso si sobrevienen a
       causa de defectos en el.

       2. El origen de este software no debe ser malinterpretado  o  alterado,
       bien  sea  explicitamente  o  por  omision.  Puesto  que  son pocos los
       usuarios que alguna vez leen los fuentes, los creditos  deben  aparecer
       en la documentacion.

       3.  Las versiones alteradas deben marcarse explicitamente como tales, y
       no pueden hacerse aparecer como si fueran el software original.  Puesto
       que  son  pocos  los  usuarios  que  alguna  vez  leen los fuentes, los
       creditos deben aparecer en la documentacion.

       4. Esta nota no puede ser quitada ni alterada (espero que si pueda  ser
       traducida, N. del T. :-).

       Unos  pocos  ficheros de soporte (getopt, strtok) distribuidos con este
       paquete son de Henry Spencer y estan sujetos a los mismos terminos  que
       los de arriba.

       Unos  pocos  ficheros  simples de soporte (strtol, strchr) distribuidos
       con este paquete estan en el dominio publico; asi quedan marcados.

       Los ficheros tar.h e is_tar.c fueron escritos por John Gilmore a partir
       de  su  programa  tar  de dominio publico, y no estan cubiertos por las
       restricciones de antes.

FALLOS

       Debe haber una forma mejor de automatizar la construccion  del  fichero
       Magic a partir de todo lo de Magdir. cCual sera?  Aun mejor, el fichero
       magico deberia compilarse a forma binaria (digamos,  ndbm(3)  o,  mejor
       todavia,  cadenas  ASCII de longitud fija para su empleo en entornos de
       red heterogeneos) para un arranque mas rapido. Entonces el programa  se
       ejecutaria  tan rapido como el de la Version 7 del mismo nombre, con la
       flexibilidad de la version System V.

       File emplea algunos  algoritmos  que  favorecen  la  rapidez  sobre  el
       acierto,  de  modo  que puede equivocarse al adivinar los contenidos de
       ficheros ASCII.

       El  soporte  para  ficheros  ASCII  (sobre  todo  para   lenguajes   de
       programacion)  es simplista, ineficiente, y requiere recompilacion para
       actualizarse.

       Deberia haber una clausula ``else'' para seguir una serie de lineas  de
       continuacion.

       El  fichero  magico  y  las palabras clave deberian admitir expresiones
       regulares.  Su empleo del TAB ASCII como un delimitador de campo es feo
       y hace dificil editar los ficheros, pero es inamovible.

       Podria  ser  interesante  permitir  letras  mayusculas  en las palabras
       clave; por ejemplo, ordenes troff(1) frente a macros  de  paginas  man.
       El soporte de expresiones regulares haria esto mas facil.

       Al  programa no le gusta FORTRAN.  Deberia ser capaz de figurarse si el
       fichero es un programa en FORTRAN  viendo algunas  palabras  reservadas
       que  aparezcan  sangradas  al  principio  de  la  linea.  El soporte de
       expresiones regulares haria esto mas facil.

       La lista de palabras clave de ascmagic probablemente deba pertenecer al
       fichero  Magic.   Esto  podria hacerse usando alguna palabra clave como
       `*' para el valor de desplazamiento.

       Otra mejora seria  ordenar  el  fichero  magico  de  modo  que  podamos
       simplemente  ejecutar  todas  las  pruebas para el primer byte, primera
       palabra, primera palabra larga, etc., una vez que  la  hayamos  cogido.
       Protestar  de conflictos en las entradas del fichero magico. cConstruir
       una regla para que las  entradas  magicas  se  ordenen  basadas  en  el
       desplazamiento  dentro  del fichero en vez de en la posicion dentro del
       fichero magico?

       El programa podria proporcionar una forma  de  dar  una  estimacion  de
       ``cuan  buena''  es  una  estimacion.   Acabamos quitando adivinaciones
       (p.ej. ``From '' como los 5 primeros caracteres de un  fichero)  porque
       no eran tan buenas como otras tentativas (p. ej. ``Newsgroups:'' frente
       a "Return-Path:"). Pero aun, si las otras no fueran buenas, deberia ser
       posible utilizar la primera adivinacion.

       Este programa es mas lento que algunas ordenes file comerciales.

       Esta  pagina  del  Manual, y particularmente esta seccion, es demasiado
       larga.

DISPONIBILIDAD

       Se puede obtener la ultima version  original  del  autor  mediante  FTP
       anonimo en ftp.astron.com en el archivo /pub/file/file-X.YY.tar.gz.

                       Con (C) pero se puede distribuir                FILE(1)