Curingas, Você Conhece?

Curinga é um recurso bastante usado e muito útil para filtrar o que se deseja listar. No linux são usados quatro tipos:

* – Usado para referenciar um nome, esteja ele completo ou não, em um arquivo ou diretório. Veja o exemplo:

[krix@rogue]$ ls ~krix/.bash*/home/krix/.bash_aliases  /home/krix/.bash_history  /home/krix/.bash_logout  /home/krix/.bashrc

? – Usado para referênciar uma letra na posição que foi inserido. Veja o exemplo:

[krix@rogue]$ ls  ~krix/.ba?hrc/home/krix/.bashrc

[] – Usado para referênciar uma determinada faixa de caracters num arquivo ou diretório. Abaixo algumas formas de uso:

  • [A-Z] – Nesse caso é feita uma referência a caracteres de A até Z;
  • [0-9] – Nesse caso é feita uma referência a caracteres de 0 até 9;
  • [c-k][2-6] – Nesse caso é feita uma referência a caracteres de c até k seguido de caracters de 2 até 6;
  • [a,z] – Nesse caso é feita referência aos caracters a e z;
  • [f,w][3,8] – Nesse caso é feita referência aos caracters f e w seguido de um dos caracteres 3 ou 8;
  • [h-m,1,7] – Nesse caso é feita uma referência a caracteres de h até m ou 1 ou 7;

É importante lembrar que a busca de caracteres é Case Sensitive. Veja exemplos:

[krix@rogue]$ ls ~krix/arq[2-5].txt
/home/krix/arq2.txt  /home/krix/arq3.txt  /home/krix/arq4.txt  /home/krix/arq5.txt
 
[krix@rogue]$ ls ~krix/arq[2,5].txt
/home/krix/arq2.txt  /home/krix/arq5.txt

{} – Usado para substituir uma string a partir uma lista de possíveis srtings. Exemplo:

[krix@rogue]$ ls ~krix/{arq2,arq5}.txt
/home/krix/arq2.txt  /home/krix/arq5.txt
 
[krix@rogue]$ ls ~krix/arq[2,5].txt
/home/krix/arq2.txt  /home/krix/arq5.txt

Uso bastante esses curingas e achei que seria bom falar sobre eles :)


Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">