powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / bash. Как выбрать файлы из директории по заданному шаблону
9 сообщений из 9, страница 1 из 1
bash. Как выбрать файлы из директории по заданному шаблону
    #37228327
Pierce34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброе время суток.

Суть задачи такова.
В директории может находится множество различных файлов.
Мне из них нужно выбрать свои. Они имеют определённый шаблон.
[7символов].ABC.[8цифр].csv
[7символов].DEF.[8цифр].csv
[7символов].GHI.[8цифр].csv

Как мне командой ls выбрать только мои, и сразу все 3?
Как-то regexp подключить?

Буду благодарен, если кто поможет.
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37228379
Фотография С0ВЕСТЬ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xargs + find
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37228455
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ls | egrep '^[0-9]{7}\.ABC|DEF|GHI\.[0-9]{8}\.csv$'

что-нить такое
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37228642
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 22.04.2011 13:00, Pierce34 wrote:
> Автор: Pierce34. Всем доброе время суток.
>
> Суть задачи такова.
> В директории может находится множество различных файлов.
> Мне из них нужно выбрать свои. Они имеют определённый шаблон.
> [7символов].ABC.[8цифр].csv
> [7символов].DEF.[8цифр].csv
> [7символов].GHI.[8цифр].csv
>
> Как мне командой ls выбрать только мои, и сразу все 3?
> Как-то regexp подключить?
\\

find . -type f "-(" -name "???????.ABC.????????.csv" -o -name
"???????.DEF.????????.csv" ... "-)" -print0 | xargs -0 echo
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37232275
Pierce34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
--null--,

Cпасибо за коммент.
Почиатл man по egrep. Вроде как его возможностей вполне хватает.
И всё даже работает Но!
Оч. любопытно получается, команда действительно выбирает только строчки, кот содержат ABC или DEF или GHI названии файла.
Однако на все осталььные условия - ей параллельно: есть там 8 цифр - нет там 8 цифр, csv. в конце, нет csv в конце - всё по барабану. Как только нашла ABC или DEF или GHI - то отображает эти записи.
Как можно избавиться от такого эффекта??
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37232465
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pierce34,

да - немного я ошибся, надо сгруппировать

да и еще что-то условие задачи прочитал неверно - впереди "символов", а не "цифр" -

поэтому так:


ls | egrep '^.{7}\.(ABC|DEF|GHI)\.[0-9]{8}\.csv$'
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37299500
Pierce34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Теперь немного нужно усложнить задачу, а именно:
выбрать строки в которые не входит запись "00".
Например:

ls |perl -nle 'if(/^[a-zA-Z0-9]{10}\.(CER|CON|CSA|ILD|PCM|PCS|PLE|SDD)\.\d{6}вот тут 2 цифры НЕ должын быть равны 00\.csv$/){print $_}'

Нашёл в мане варианты, когда это можно сделать относительно одного символа, с помощью
[^0]
Но это применимо только к одному символу, а что насчёт выражения?
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37300732
S_Andrey_A
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pierce34,

ls |perl -nle 'if(/^[a-zA-Z0-9]{10}\.(CER|CON|CSA|ILD|PCM|PCS|PLE|SDD)\.\d{6}[1-9]{2}\.csv$/){print $_}'
...
Рейтинг: 0 / 0
bash. Как выбрать файлы из директории по заданному шаблону
    #37304853
Pierce34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
S_Andrey_A,

Такой вариант, к сожалению, не подойдёт, т.к. он исключает значения 01 и 10.

Но всё равно спасибо за предложние :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / bash. Как выбрать файлы из директории по заданному шаблону
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]