Я думаю, что первая проблема заключается в $2
в вашем awk-скрипте, потому что с $2
это второй столбец (DE, GH, BF,... ), а не третий, где числа вы хотите сравнить есть.
Затем должно быть условие и то, что вы хотите сделать, если условие выполнено.
awk -F'_' '($3>23153 && $3<23167){print}' *.txt >> output.txt
В ()
есть условие, а в {}
— действие.
РЕДАКТИРОВАТЬ:
Как мне напомнили в комментариях, действие {print}
является действием по умолчанию, поэтому вы можете еще больше упростить awk-скрипт до:
awk -F'_' '($3>23153 && $3<23167)' *.txt >> output.txt
Мне удалось отследить преступника по отзывам коллеги. Оказывается, проблема была вызвана тем, что Duplicati записывает временные файлы и удаляет их. Чтобы решить эту проблему, я меняю расположение этих файлов на жесткий диск, а не на SSD.