Получить путь к файлу каталогов, содержащих определенный тип файла в алфавитном / цифровом порядке

У меня есть каталог, содержащий 800 подкаталогов с именем disp-001 ... disp-800 . Все эти подкаталоги должны содержать конкретный файл say stdout . Один из них не содержит файл, и мне нужно найти папку, в которой нет файла. Если я попробую

 find . -name "stdout" 

он возвращает мне значения всех файлов, но они не упорядочены с 001 до 800, что затрудняет идентификацию папки. Есть ли способ упорядочить вывод таким образом, чтобы они упорядочивались численно?

ЗАМЕТКА:

Я оставляю этот вопрос неотредактированным, чтобы продемонстрировать (по крайней мере, самому себе) классическую проблему XY . Все, что мне было нужно, это определить каталоги, не содержащие конкретного файла, но вместо этого этот вопрос касался конкретного попытки решения проблемы. Здесь вы найдете решение для поиска каталога, не содержащего конкретный файл.

One Solution collect form web for “Получить путь к файлу каталогов, содержащих определенный тип файла в алфавитном / цифровом порядке”

Лично я вместо этого использовал бы оболочку:

 $ for dir in disp-{001..800}; do [ -f "$dir"/stdout ] || echo "$dir"; done disp-389 

В моем тесте disp-389 был единственным каталогом, лишенным этого файла, и поэтому он был напечатан только один.

Если ваша оболочка не поддерживает расширение формы, просто используйте for dir in disp* или, если вы хотите проверить все каталоги, for dir in */ .

  • открыть файл, используя CDPATH и символическую ссылку
  • Linux и Unix - лучшая ОС в мире.