file (1) 5.28 Argumento inválido ao usar o parâmetro de bytes

3

Versão 5.26 do file(1) adicionado suporte para o limite de leitura de byte definido pelo usuário:

2016-03-31  13:50  Christos Zoulas <[email protected]>

    * make the number of bytes read from files configurable.

Ao usar -P , um deve ser capaz de definir o limite de contagem de bytes. No entanto, recebo um erro Invalid argument ao usar o parâmetro, por exemplo:

$ file -i --mime-encoding -P bytes=15000 myinput
file: compiled magic version [528] does 
file: Can't set bytes Invalid argument

Não tenho certeza se está relacionado, mas também recebo um aviso de discrepância de versão ao executar o arquivo: file: compiled magic version [528] does not match with shared library magic version [524]

Estou usando o arquivo 5.28.

$ file -v
file-5.28
magic file from /etc/magic:/usr/share/misc/magic

EDIT Este é o procedimento de instalação que eu segui:

  1. ./configure
  2. make
  3. make check - sem erros
  4. sudo make install
  5. make installcheck - sem erros
por brito 11.10.2016 / 00:44

1 resposta

2

Lembre-se de remover libmagic do seu sistema antes de instalar file das fontes:

$ sudo apt-get purge libmagic1 file

Em seguida, para instalar o file :

$ wget ftp://ftp.astron.com/pub/file/file-5.28.tar.gz
$ tar xvzf file-5.28.tar.gz
$ cd file-5.28
$ ./configure --prefix=/usr
$ make
$ sudo make install

Isso funcionou para mim:

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.1 LTS
Release:        16.04
Codename:       xenial
$ file -i --mime-encoding -P bytes=15000 $(which file)
/usr/bin/file: application/x-executable; charset=binary
    
por 11.10.2016 / 18:19

Tags