Estações de trabalho on-line OnWorks Linux e Windows

Logotipo

Hospedagem online grátis para estações de trabalho

<Anterior | Conteúdo | Próxima>

Expansão do nome do caminho

O mecanismo pelo qual os curingas funcionam é chamado expansão do nome do caminho. Se tentarmos algumas das técnicas que empregamos em nossos capítulos anteriores, veremos que são realmente expansões. Dado um diretório inicial parecido com este:



[me @ linuxbox ~] $ ls

Área de trabalho ls-output.txt

FOTOS

Modelos

Documentos Música

Público

Vídeos


poderíamos realizar as seguintes expansões:



[me @ linuxbox ~] $ echo D *

Documentos da área de trabalho

[me @ linuxbox ~] $ echo D *

Documentos da área de trabalho


e:



[me @ linuxbox ~] $ echo * s

Documentos Imagens Modelos Vídeos

[me @ linuxbox ~] $ echo * s

Documentos Imagens Modelos Vídeos


ou mesmo:



[me @ linuxbox ~] $ echo [[: superior:]] *

Documentos da área de trabalho Música Imagens Modelos públicos Vídeos

[me @ linuxbox ~] $ echo [[: superior:]] *

Documentos da área de trabalho Música Imagens Modelos públicos Vídeos


e olhando além de nosso diretório inicial:



[me @ linuxbox ~] $ echo / usr / * / share

/ usr / kerberos / share / usr / local / share

[me @ linuxbox ~] $ echo / usr / * / share

/ usr / kerberos / share / usr / local / share


imagem

Expansão do nome do caminho de arquivos ocultos

Como sabemos, os nomes de arquivos que começam com um caractere ponto são ocultados. A expansão do nome do caminho também respeita esse comportamento. Uma expansão como:

eco *

não revela arquivos ocultos.

À primeira vista, pode parecer que podemos incluir arquivos ocultos em uma expansão, iniciando o padrão com um ponto inicial, como este:

echo. *

Quase funciona. No entanto, se examinarmos os resultados de perto, veremos que os nomes “.” e “..” também aparecerá nos resultados. Como esses nomes se referem ao diretório de trabalho atual e seu diretório pai, o uso desse padrão provavelmente produzirá um resultado incorreto. Podemos ver isso se tentarmos o comando:

ls -d. * | menos

Para melhor realizar a expansão do nome do caminho nesta situação, temos que empregar um padrão mais específico:

echo. [!.] *

Esse padrão se expande em cada nome de arquivo que começa com um ponto, não inclui um segundo ponto e é seguido por quaisquer outros caracteres. Isso funcionará corretamente com a maioria dos arquivos ocultos (embora ainda não inclua nomes de arquivo com vários pontos iniciais). o ls comando com o -A opção (“quase todos”) fornecerá uma lista correta de arquivos ocultos:

ls -A


Top OS Cloud Computing na OnWorks: