мне нужно использовать GNU найти команду для того, чтобы найти файлы шаблона, описываемого POSIX BRE ниже:Различные POSIX Основные регулярные выражения в поиске и grep?
"_[[:digit:]]*.txt"
(подчеркивание следует любое количество цифр с последующим периодом с последующим «.txt»)
Когда имена целевых файлов помещаются в один текстовый файл, я могу успешно выбрать заинтересованные, используя grep с вышеупомянутым RE. Однако найти с --regextype posix-basic не найдено.
т.д .:
$ touch 1.txt _2.txt _3_r.txt _3.txt 3.txt
$ for i in $(ls); do echo $i >> files.txt; done
$ grep "_[[:digit:]]*.txt" files.txt
_2.txt
_3.txt
$ find . -regextype posix-basic -regex "_[[:digit:]]*.txt"
$
ли Grep и найти имеют разный синтаксис для POSIX Brès? Как мне затем построить RE, чтобы выбрать интересующие имена файлов (_2.txt и _3.txt в примере).
В стороне, это [бесполезное использование 'ls'] (http://partmaps.org/era/unix/award.html) - вы имеете в виду' for i in *; do ... 'или несколько больше ad-hoc' ls -1> files.txt'. – tripleee