Да, вы можете использовать это, но *
не делает то, что вы думаете. Он расширяется до списка содержимого каталога и пытается выполнить себя как двоичный файл. Это может быть опасно, когда содержимое вашего каталога содержит реальные исполняемые файлы, которые не предназначены для запуска.
Вы можете использовать встроенную оболочку, не разветвляя отдельный процесс, чтобы что-то сделать с результатом расширения пути. Например, используя printf()
printf '%s\n' *
Посмотрите, что происходит, когда вы просто пытаетесь выполнить *
в командной строке
mkdir -p foobar
cd foobar
touch zeezee
*
bash: zeezee: command not found
Вы можете tail
результат этого вывода и фильтруйте результаты так, как вам удобно.