У меня есть каталог с несколькими файлами:
filename_10-1.txt
filename_10-2.txt
...
filename_10-1000.txt
filename_20-1.txt
filename_20-2.txt
...
filename_20-1000.txt
...
filename_600-1000.txt
Я хотел бы перечислить все файлы, которые содержат меньше строк, чем вдвое больше первого числа в имени файла (например, filename_10-874
должно иметь 20 строк (2 * 10 строк) и filename_40-684
должны иметь 80 строк (2 * 40 строк)).
Подход
Шаг 1: Я могу сосчитать числострок в одном файле, например:
wc -l filename_10-1.txt
Шаг 2: Найти количество строк во всех файлах
for i in $(find filename_* -type f);
do wc -l $i;
done
Шаг 3: Список только тех файлов, которые содержат меньше строк, чемимя их файла указано.
Я наткнулся на эту запись , однако я не смог изменить код в соответствии со своими потребностями.
Вопрос
Как мне перечислить все файлы, которые содержат меньше строк, чем число в имени файла?