В зависимости от того, как вы хотите обрабатывать части I
и X
и т.д., Вы можете просто использовать команду sort
например:
find . -type f | sort -n
если это не тот порядок сортировки, который вам нужен, вам нужно будет предоставить нам более подробную информацию (и в идеале показать нам желаемый результат из вашего примера).
Учитывая, что вы хотите сгруппировать начало имен вместе, мы можем указать ключевое поле для сортировки. Так как вывод из find будет начинаться с ./{id}
а следующие два символа (по-видимому) связаны в пакете вместе, мы можем начать сортировку с 5-го символа в строке, указав ключ сортировки:
find . -type f | sort -n -k 1.5
-k
для сортировки позволяет указать ключ для сортировки, здесь мы сортируем первое поле, но начинаем с 5-го символа, а затем используем -n
для числовой сортировки
Если вы хотите только текущий каталог, вы можете использовать -maxdepth
как в:
find . -maxdepth 1 -type f | sort -n -k 1.5
если вы хотите, чтобы он был переносимым:
find . -path '*/*/*' -prune -o -type f | sort -n -k 1.5