2012-01-12 7 views
9

Mam problem z uwzględnianiem wielkości liter w moim bash. na przykład:Nieoczekiwany listing katalogu bash z *

$ touch nohupa nohuPb 
    $ ls nohup* 
    nohupa nohuPb 

Jednak oczekuję, że będzie to tylko lista nohupa no noPB. ponieważ nohuPb ma kapitał P. Nie wiem jaka zmienna w moim zbiorze .bashrc, która * działa ignoruje wielkość liter.

Każdy pomysł?

Odpowiedz

9

To powoduje, że powoduje to nocaseglob.

nocaseglob
Jeśli ustawiony atakujących odpowiada nazw w przypadku niewrażliwe sposób podczas przeprowadzania ekspansji ścieżki dostępu (patrz PathName rozszerzalności powyżej).

testowania

$ touch fooab fooAb 
$ ls 
fooAb fooab 
$ shopt -s nocaseglob 
$ ls fooa* 
fooAb fooab 
$ shopt -u nocaseglob 
$ ls fooa* 
fooab 
+0

To prawda. Dzięki Ci – ARH

2

wygląda jak muszla ma zestaw nocaseglob. Możesz usunąć to ustawienie, używając shell built-in o nazwie shopt. Użyj opcji -s do opcji enable it i -u do disable.

Aby uzyskać więcej informacji, odwiedź stronę here.

Powiązane problemy