Tato otázka již má odpovědi zde :

Komentáře

  • První příklad používá běžnou syntaxi regexp, kde druhý používá rozšířenou syntaxi. Vaše verze find ve výchozím nastavení zřejmě očekává předchozí verzi. ' neříkáte, jaký systém ' používáte – váš find může mít přepnutím zapnete rozšířenou analýzu regexp. Například na FreeBSD je ' s -E
  • @D_Bye ah, že ' je to dobré. CentOS6. Zkoušel jsem ' -regextype posix-extended a to ' nefunguje ani

Odpověď

Pokud používáte GNU find, mělo by to pro vás fungovat

 find . -regextype sed -regex "./test[0-9]\{2\}.txt" 

Vysvětlení

  • -regextype sed – použijte základní posix regulární výraz (jen proto, to je to, s čím jsem obeznámen)
  • ./ – nutné, protože funkce find považuje všechny cesty k souborům v relativním hledání za začátek tohoto vzoru
  • [0-9]\{2\} – unikly 2 instance třídy [0-9] číslicových znaků s kvantifikátorem \{...\} v závorkách základní posix regulární výrazy

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *