Identifique arquivos text / ascii no Linux / Solaris

1

Eu tenho um pequeno projeto para criar o script bash que busca no sistema operacional (Linux / Solaris) o endereço IP atual dos arquivos e os substitui por outro endereço IP.

O problema é que o endereço IP pode estar em um arquivo de texto ou não em um arquivo de texto como arquivos binários / dados, etc.

Eu uso o comando:

file –mime $PATH ( --mime is valid only for Linux )

Para verificar se o arquivo é um arquivo de texto ou não um arquivo de texto (como arquivo binário ou de dados, etc.)

Por favor, conselhos, se eu fizer a coisa correta. A minha conclusão está correta?

Por exemplo, se o comando:

file –mime $PATH

Devolve os resultados "text / plain"

Em seguida, seu arquivo de texto / ascii, se não, então não é arquivo de texto?

A segunda pergunta:

file –mime

--mime flag é válido apenas para o Linux, mas não existe no Solaris, então qual a alternativa para o Solaris?

Como todos sabem, o comando file às vezes não identifica exatamente a definição do arquivo de destino, portanto, se alguém tiver outra ideia de como identificar o arquivo de texto, ficaremos felizes em receber qualquer sugestão brilhante.

    
por yael 08.01.2013 / 08:01

1 resposta

1
find /location -type f -print | xargs file

deve ser bastante portátil. Você pode então procurar por "[Tt] ext", etc. Você precisará fazer uma lista das várias saídas possíveis (script, texto, ...) e ver quais você quer ver.

    
por 08.01.2013 / 09:29