shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Saber se um arquivo é um arquivo texto.


From: Antônio Flávio
Subject: Re: [shell-script] Saber se um arquivo é um arquivo texto.
Date: Tue, 16 Dec 2008 20:00:24 -0300

é. o -f do test faz isso.

2008/12/16 Elder Marco <address@hidden>

>   Olá,
>
> Bom, num dos meus primeiros scripts, eu decidi escrever algo que pudesse me
> ser útil. Não raro, dou um cat em um arquivo texto para saber seu conteúdo,
> mas preciso usar algumas opções do cat (como mostrar o número da linha) ou
> conectar a saída do comando para o less. De vez em quando eu também dou um
> vacilo e acabo dando um cat em um arquivo que não é texto ... :(
>
> Então decidi fazer um script que recebe um ou dois parâmetros. Se receber
> dois, o primeiro será um parâmetro para o comando cat ou um comando que
> envia a saída dele para o lesse e o segundo será o arquivo que deve ser
> lido. O que eu preciso saber, além de outras coisas, é se esse arquivo é ou
> não um arquivo texto. Primeiramente pensei em inserir algo da seguinte
> maneira:
>
> if [ ! -n $(file $ARQUIVO | grep text ) ; then
> echo "$ARQUIVO não é um arquivo texto "
> exit 1
> fi
>
> (eu não fechei o if acima porque esse bendito teclado aqui está
> desconfigurado no momento em que escrevo e não consigo achar a tecla que
> fecha os colchetes!)
>
> No entanto, eu percebi que isso nem sempre pode funcionar pois o comando
> file pode lidar com algum arquivo texto e não necessariamente ter um "text"
> na sua saída (por exemplo, o /etc/sudoers no Fedora 8). E convenhamos, isso
> é muita gambiarra não é? :-)
>
> Uma opção que achei útil --- e é aqui que está a minha dúvida --- é a opção
> -f do comando test que verifica se um arquivo é um arquivo regular.
>
> O que significa exatamente um arquivo ser um arquivo regular? Eu poderia
> utilizar isso para saber se o arquivo é ou não um arquivo texto (e portanto
> poderia ser lido com o cat)? Ou existe uma forma mais elegante de saber
> isso?
>
> Abs
>
> --
> Elder Marco
>
> Linux User: #471180
>
> "O conhecimento é tristeza: aqueles que mais sabem são os que mais
> profundamente devem lamentar a mais fatal verdade, a árvore do conhecimento
> não é a da vida." (Versos extraídos da tragédia Manfred, de Byron e citado
> por Nietzsche em "Humano, demasiado humano")
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Antônio Flávio F. Rodrigues
LPIC-1


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]