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

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

Re: [shell-script] testar nome de arquivo


From: Julio C. Neves
Subject: Re: [shell-script] testar nome de arquivo
Date: Wed, 8 Aug 2012 18:39:27 -0300

Acho que vou dar um exemplo bastante interessante e útil. A saída de um
formulário em yad (diálogo --form) traz os campos separador por uma barra
vertical (|). Veja só que legal:

Saida=$(yad --form                                   \
    --title "Copia ou move arquivos"                 \
    --image filesave --align right                   \
    --field "Arquivo origem:FL"                      \
    --field "Diretório destino:DIR"                  \
    --field "Marque este campo se desejar mover:CHK" \
    "" ~ FALSE) || exit 1
IFS='|' read Origem Destino Cmd <<< "$Saida"

Repare que os campos lidos (--field) foram desmembrados em uma única linha,
graças ao here strings (<<<). Só por curiosidade, essa linha YAD gerou o
form a seguir:

[image: Imagem inline 1]

Abcs,
Julio

*
*



Em 8 de agosto de 2012 16:24, João Olavo Baião de Vasconcelos <
address@hidden> escreveu:

> **
>
>
> 2012/8/8 Emerson Domingues Souto - H2M <address@hidden>
>
> > **
> > O que é melhor de se usar ? comando << arquivo OU comando <<< arquivo ?
> >
>
> Na verdade, em me enganei em dizer que < e << recebem arquivo. Na verdade,
> só o <. O << é conhecido como here document (veja aqui:
> http://tldp.org/LDP/abs/html/here-docs.html).
>
> Mas o < e o <<< são coisas distintas, objetivos distintos. Um recebe
> arquivo, o outro uma string!
>
> comando < arquivo: joga o **conteúdo** do arquivo para a entrada padrão do
> comando.
> comando <<< *string*: coloca a string dentro de um arquivo virtual e passa
> esse arquivo pro comando.
>
> Como eu disse, imagine o <<< como funcionando do mesmo modo que o | (pipe).
>
> echo $var | grep '...' == grep '...' <<< $var
>
> Atenciosamente,
> --
> João Olavo Baião de Vasconcelos
> Analista de Sistemas - Infraestrutura
> joaoolavo.wordpress.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


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



reply via email to

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