Відповіді:
Таким же чином, як ви не можете запуститись ls "*.txt"у звичайній оболонці, ви також не можете запустити її в нижній частині. Коли ви ставите *.txtлапки, ви здійснили lsпошук буквального файлу, який називався, *.txtколи замість цього ви повинні робити це:
$ echo $(ls *.txt) # => file.txt otherfile.txt
Кращий спосіб зробити це - взагалі не використовувати ls.
$ echo *.txt # => file.txt otherfile.txt
ls.
ls -l "*.txt". Або принаймні можу. Я роблю це не часто, але коли я це роблю, зазвичай мені кажуть, що не вдалося знайти * .txt ...
bashподібних оболонках і подібні до нихzsh) не збігаються з одинарними цитатами! Наприклад, розширення параметрів ($foo) проводиться всередині подвійних лапок, але не одиничних лапок.