Список файлов, имя которых начинается с любого из символов между а-k

Как перечислить файлы, чье имя начинается с любого символа a до k (оба включительно)?

  • Как разрешить пользователю A удалить файл B от имени B?
  • Как перенести файлы с полного раздела на один с большим количеством комнат?
  • Реорганизация строк в текстовом файле
  • Поиск файлов по дате изменения
  • Несколько приложений, которые записывают один и тот же файл в общем разделе NFS
  • Как начать обработку файла со смещением?
  • Как использовать grep для исходного кода без комментариев
  • Есть ли индекс для каталога?
  • Структура структуры преобразования
  • Скрипт с использованием «split» в цикле над большими файлами
  • С mv, можно установить временную зависимость от файлов mv'ed?
  • Как сравнить два каталога полностью без git?
  • 7 Solutions collect form web for “Список файлов, имя которых начинается с любого из символов между а-k”

     find . -type f -name '[ak]*' 

    или (чтобы быть в безопасности от проблем локали)

     find . -type f -name '[abcdefghijk]*' 

    Попробуй это:

     find . -type f -name "[ak]*" 

    Для текущего каталога вы можете использовать

     ls -d [ak]* 

    Для этого вы можете использовать функцию расширения командной строки Bash.

     $ ls -l [ak]* 

    [ak] относится к алфавиту от a до k .
    * обозначает любое количество символов.

    Итак, теперь bash ищет файлы, начинающиеся с буквы a до k и за ними следует любой символ сколько угодно раз.

    Просто используйте shell globbing (test: echo [ak]* ). Вам обычно нужно перебирать файлы, поэтому обычный шаблон for file in [ak]*; do something; done for file in [ak]*; do something; done for file in [ak]*; do something; done . Никогда не используйте ls для итерации.

    Полезное чтение: http://mywiki.wooledge.org/ParsingLs

    – Чтобы быть более конкретным, поскольку неясно, отображать ли текущие файлы каталога или системные файлы, вы можете использовать один из определенных режимов.

    ls -d [ak] * -> для отображения файлов / каталогов только текущего места / каталога / папки.

    или

    find / -type f -name '[k]' * ->, чтобы отобразить файлы / целые системные каталоги и, помня, что разница здесь заключается в том, что скрытые элементы не отображаются, как это уже показано.

      find . -type f -name '[ak]*' 

    если используется команда 'ls', чтобы также просмотреть скрытое использование этого режима.

      ls -da [ak]* 

    Просто для справки, с zsh: (И не попадая в поток ls / echo / etc.)

    Отображение обычных файлов в текущем каталоге:

     ls [ak]*(.) 

    Отобразить все типы файлов в текущем каталоге:

     ls -d [ak]* 

    То же самое рекурсивно:

     ls -d -- **/[ak]*(.) 

    (Не глядя внутрь скрытых каталогов) и

     ls -d -- **/[ak]* 
    Linux и Unix - лучшая ОС в мире.