Не могу найти правильное регулярное выражение для «Резервное копирование -ГГГГ -ММ -ДД»

Мне непонятно, должны ли частичные совпадения быть привязаны к началу строки. Если предположить, что ответ «да», может ускорить процесс, так это использование бинарного поиска с помощью почтенной команды look. Конечно, lookнужно, чтобы его входной файл был отсортирован. Поэтому сначала создайте отсортированную версию исходного файла

.
 sort file > file.sorted

Затем выполните цикл по исходному файлу, lookпросматривая по одному слову в отсортированном файле.

while read -r word; do 
    printf "%s %d\n" "$word" "$(look -b "$word" file.sorted | wc -l)"; 
done <file

В некоторых системах флаг -bне требуется передавать в lookдля принудительного бинарного поиска. Кэширование отсортированного файла на диске может еще больше ускорить процесс

.
0
23.11.2020, 21:33
1 ответ

-regex— это совпадение всего пути . Попробуйте вместо этого

-regex '.*/Backup-[0-9]{4,}-[0-9]{2}-[0-9]{2}$'
0
18.03.2021, 22:47

Теги

Похожие вопросы