Navegue até a primeira pasta disponível na linha de comando do Windows

5

Dois casos:

  1. Existe apenas uma pasta dentro do diretório de trabalho.
  2. Existem várias pastas dentro do diretório de trabalho e precisam navegar dentro da primeira pasta disponível, classificadas alfabeticamente.
por skarthik345 16.06.2017 / 14:13

2 respostas

16

  1. Digite cd e adicione um Espaço (não pressione Enter ainda).
  2. Pressione a tecla Tab uma vez, que adicionará o primeiro diretório disponível
  3. Se você quiser o próximo, continue pressionando Tab

Tab na linha de comando do Windows funciona de uma maneira diferente da do Linux. No Linux, ele se recusará a completar a palavra se houver várias possibilidades, e as listará se você insistir. No Windows, pressionar a tecla Tab várias vezes irá percorrer as possibilidades e pode até substituir o que você já digitou.

    
por 16.06.2017 / 14:24
1

Você deve usar um loop para obter a pasta.
Em uma unidade com ordenação alfabética inerente (formato ntfs), você pode usar o mais simples For /D , caso contrário, você precisará de um For /f analisando a saída de um comando dir.

@Echo off
Set "FirstDir="
For /d %%D in ("X:\Path\to\workdir\*") do If not defined FirstDir Set "FirstDir=%%D"
PushD "%FirstDir%"
Echo current dir = %CD%
Pause
PopD

Para a versão mais confiável, substitua o anterior por este:

For /F "delims=" %%D in ('Dir /B/AD/ON "X:\Path\to\workdir\*"') do If not defined FirstDir Set "FirstDir=%%D"

A redefinição do var FirstDir e na verificação de existência do loop garante que você obtenha apenas o primeiro diretório.

    
por 16.06.2017 / 15:04