Menu
Coddy logo textTech

O Curinga Interrogação

Parte da seção Fundamentos do Journey de Terminal da Coddy — lição 26 de 82.

O curinga de interrogação ? corresponde a exatamente um caractere. Diferente de * que corresponde a qualquer número de caracteres, ? é mais preciso — cada ? representa uma posição de um único caractere.

Por exemplo, se você tiver estes arquivos:

file1.txt
file2.txt
file3.txt
file10.txt
notes.txt

Usando ? para corresponder a arquivos com exatamente um caractere após file:

ls file?.txt

Saída:

file1.txt
file2.txt
file3.txt

Observe que file10.txt é não correspondido porque 10 são dois caracteres, não um.

Usando múltiplos pontos de interrogação:

Cada ? corresponde exatamente a um caractere, então você pode encadeá-los:

ls file??.txt   # matches file10.txt, file23.txt etc.

Misturando com outros caracteres:

ls ???.txt      # matches any .txt file with exactly 3-character name
ls img_?.jpg    # matches img_1.jpg, img_2.jpg but NOT img_10.jpg

Quando usar ? vs *:

  • Utilize ? quando souber exatamente quantos caracteres variam
  • Utilize * quando o número de caracteres variáveis for desconhecido
challenge icon

Desafio

Iniciante

Use o ? caractere curinga para listar apenas os arquivos que correspondem a file?.txt — arquivos nomeados file seguidos por exatamente um caractere e terminando com .txt.

Dica: file10.txt não deve aparecer em seus resultados porque 10 são dois caracteres. O ? caractere curinga corresponde a apenas um caractere por vez.

Folha de consulta

O curinga de interrogação ? corresponde a exatamente um caractere. Diferente de *, que corresponde a qualquer número de caracteres, ? é mais preciso — cada ? representa uma posição de um único caractere.

Exemplo de combinação de arquivos com exatamente um caractere após file:

ls file?.txt

Usando múltiplas interrogações:

Encadeie múltiplos ? para combinar múltiplos caracteres:

ls file??.txt   # combina file10.txt, file23.txt etc.

Misturando com outros caracteres:

ls ???.txt      # combina qualquer arquivo .txt com nome de exatamente 3 caracteres
ls img_?.jpg    # combina img_1.jpg, img_2.jpg mas NÃO img_10.jpg

Quando usar ? vs *:

  • Use ? quando você souber exatamente quantos caracteres variam
  • Use * quando o número de caracteres variáveis for desconhecido

Experimente você mesmo

Terminal
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos