win-bash não detectará unidades raiz?

0

Estou usando a porta de bash do Windows, conhecida como win-bash, e com base no que ela diz sobre os caminhos:

One important difference is the handling of drives: cygwin uses its installation directory as root dir and links all drives in the pseudo subdir /cygdrive. win-bash uses a diffent method: drives are included in paths, like on windows (e.g. c:/Winnt/System32). The root directory / is mapped to the root directory of the current drive. Examples: ls c:/winnt - shows the content of the directory c:/winnt cd c:/; ls /winnt - changes current drive to c: and shows the content of the directory c:/winnt cd d:/; ls /winnt- changes current drive to d: and shows the content of the directory d:/winnt There are some other differences, most of them have been added to simplify the usage of existing un*x shell scripts: If a shell script starts with an interpreter specification like #!/path/interpreter, the interpreter is searched in the PATH environment instead of /path. E.g. a Perl script starting with #!/bin/perl will be started with perl.exe from the PATH environment variable. win-bash doesn't use any dlls or registry keys

Detectar caminhos não-raiz parece funcionar como: if [ -d "C:/bash" ]; then echo "yes"; else echo "no"; fi No entanto, a detecção de caminhos raiz assim if [ -d "C:/" ]; then echo "yes"; else echo "no"; fi não funciona. Isso também inclui C: e / .

Talvez haja outra sintaxe de sintaxe bash para detectar a existência de caminhos?

    
por chaz 26.04.2013 / 23:14

3 respostas

0

Descobri que adicionar um período após o caminho da unidade raiz funciona conforme sugerido por ignis.

    
por 27.04.2013 / 19:25
0

Solução alternativa: C:/. e C:/bash/.. work?

    
por 27.04.2013 / 19:33
0

Uma alternativa para o win-bash seria o winbash de aqui . Ele fez um trabalho melhor na detecção de caminhos da raiz. Ambos "C: /" e "/" retornam sim nos testes. Apenas "C:" falhou.

Além disso, eu gosto que o winbash lida com os familiares combos ctrl -key que estamos acostumados a gostar ctrl - p , ctrl - a , ctrl - e , etc. (no win-bash apenas retorna "^ P" na tela) .

    
por 17.06.2013 / 09:33