Можно ли использовать glob при логическом поиске?

#unix #glob

#unix #glob

Вопрос:

Я надеюсь, что кто-нибудь сможет мне помочь. Я пытаюсь использовать glob для поиска имени файла. Я хочу найти имя файла, которое содержит 2 ИЛИ 4 в качестве пятого символа в имени файла. Например, я хочу написать glob, который нашел бы эти имена файлов:

 00002.txt  
00004.txt  
12002.txt  
  

Я понимаю, что я мог бы использовать glob для поиска этих файлов, используя серию, такую как:

 ls ????[2-4]*
  

Однако приведенный выше glob также соответствовал бы файлам, у которых было 3 в качестве пятого символа. Кто-нибудь знает, как использовать glob только для файлов, содержащих 2 ИЛИ 4 в качестве пятого символа? Большое спасибо за ваше время!

Комментарии:

1. @khachik Это должен быть ответ, а не комментарий.

Ответ №1:

Использование [24] позволит использовать только 2 или 4 вместо диапазона [2-4] , что даст вам:

 ls ????[24]*