A conclusão é chamada quando você digita um dos dois caracteres de controle. A função de conclusão usa a cadeia de caracteres ...

A conclusão é chamada quando você digita um dos dois caracteres de controle. A função de conclusão usa a cadeia de caracteres do caminho à esquerda do cursor, acrescenta um caractere curinga a ela, se já não existir um, e cria uma lista de caminhos correspondentes. Em seguida, exibe o primeiro caminho correspondente. Se nenhum caminho corresponder, ela emite um aviso e não altera nada. Depois, o pressionamento repetido do mesmo caractere de controle percorrerá a lista de caminhos correspondentes. O pressionamento da tecla Shift com o caractere de controle permite percorrer a lista de trás para a frente. Se você fizer qualquer edição na linha e pressionar o caractere de controle novamente, a lista salva de caminhos correspondentes é descartada e uma nova é gerada. O mesmo ocorre se você alternar entre a conclusão de nome de arquivo e de pasta. A única diferença entre os dois caracteres de controle é que o caractere de conclusão de arquivo corresponde a ambos os nomes de arquivo e de pasta, enquanto que o caractere de conclusão de pasta somente corresponde a nomes de pastas. Se a conclusão de arquivo for usada em qualquer um dos comandos de pasta internos (CD, MD ou RD), a conclusão de pasta será usada.  O código de conclusão trata corretamente de nomes de arquivos que contêm espaços ou outros caracteres especiais colocando aspas em volta do caminho correspondente. Além disso, se você retornar com o cursor e chamar a conclusão a partir de uma linha, o texto à direita do cursor no ponto em que a conclusão foi chamada será descartado.  Os caracteres especiais que exigem aspas são:            ()[]{}^=;!%'+,`~