Glob для подстановки подкаталогов

Надеюсь, я не единственный, кто обнаруживает шары к неправильному поведению. Если бы вы спросили меня час назад, я был бы на 99% уверен, что

test/src/**/*.js 

будет соответствовать всем .js-файлам в src и во всех подкаталогах src..but Я нахожусь в MacOS и используя Bash 3.2.57, и это не соответствует более чем одному файлу.

Кто-нибудь знает, что может быть неправильно?

2 Solutions collect form web for “Glob для подстановки подкаталогов”

Bash 3.2 не поддерживает globstar:

 $ shopt -s globstar bash: shopt: globstar: invalid shell option name 

Без shopt -s globstar ** – просто простой нерекурсивный глобус.

На странице новостей bash говорится:

Это краткое описание новых функций, добавленных в bash-4.0 с момента выпуска bash-3.2. Как всегда, страница руководства (doc / bash.1) – это место для поиска полных описаний.

  1. Новые возможности в Bash

    […]

    ш. Существует новая опция оболочки: globstar . Когда он включен, код globbing обрабатывает ** специально – он соответствует всем каталогам (и файлам внутри них, когда это необходимо) рекурсивно.

Вам нужно будет обновить свой баш до 4,0 (возможно, установить один из доморощенного) или использовать find .

Вместо этого вы можете использовать find . Например:

 find ./test/src -type f -name \*.js 

Если вы хотите ограничить только 2 справочника глубиной:

 find ./test/src -maxdepth 2 -type f -name \*.js 
  • Не удается установить общую папку на Linux VM
  • Regex in find - OS X
  • Передача порта ssh через псевдотерминал
  • Mac-стиль / специальные клавиши Alt для Linux
  • Yosemite + Fusion 7.0.1 теперь получает «Could not open / dev / vmmon: Нет такого файла или каталога» и не запускает какую-либо виртуальную машину
  • Как установить инструменты программирования в корневой каталог, чтобы они могли использоваться пользователями, не являющимися администраторами?
  • Почему у меня есть 9 процессов bash, почему один из них занимает столько CPU и как их остановить?
  • Как перенести настройки ulimit в macOS?
  • настроить mysql с помощью django
  • Сервер HylaFax работает в OS X?
  • Как узнать, когда и какой пользователь зашел в систему под Mac OS X? Последнего недостаточно!
  • Interesting Posts

    Можно ли использовать inotify для просмотра определенного файла, который будет создан без мониторинга всего каталога?

    Преобразование аудио в текст

    Настройка беспроводной сети Atheros AR9285 в Gentoo

    как добиться оптимального выравнивания для раздела emmc?

    Функция архивирования произвольных файлов с шифрованием

    С помощью сценариев оболочки мне нужно объединить данные из двух файлов в один файл

    Какой формат дает photorec для файлов?

    Запрос ввода пользователя при чтении файла по строкам

    Переименовать команду с несуществующим целевым каталогом

    Как проверить, что ядро ​​Linux не замерзает при загрузке или загрузке больших данных через интерфейс Ethernet?

    iptables: последний модуль

    Экспорт файлов изображений виртуальных камер из окна linux

    Является ли оболочка созданной `bash -i -c <command>` интерактивной?

    Необходимо настроить экранную панель телевизора, подключенного по HDMI

    Почему я не могу запускать программы на другом разделе в Linux?

    Linux и Unix - лучшая ОС в мире.