Odpowiedzi:
W ten sam sposób, w jaki nie można uruchomić ls "*.txt"
w normalnej powłoce, nie można również uruchomić go w podpowłoce. Kiedy wpisujesz *.txt
cudzysłowy, ls
szukałeś dosłownego pliku o nazwie, *.txt
kiedy zamiast tego powinieneś to zrobić:
$ echo $(ls *.txt) # => file.txt otherfile.txt
Lepszym sposobem na to jest wcale ls
.
$ echo *.txt # => file.txt otherfile.txt
ls
.
ls -l "*.txt"
. A przynajmniej mogę. Robię to nie często, ale kiedy to robię, zwykle mówi mi, że nie można znaleźć * .txt ...
bash
i podobne powłokizsh
) nie są takie same jak pojedyncze cudzysłowy! Na przykład interpretacja parametrów ($foo
) jest wykonywana w cudzysłowach, ale nie w pojedynczych cudzysłowach.