2014-01-10 3 views
1

Я хочу написать регулярное выражение, которое будет соответствовать fooo-1234567890.csv вот что я пробовал:Regex в Bash сценарий

if [[ $path == *.csv ]]; then if [[ $path =~ ^.*-\d{10}.csv$ ]]; then echo "COOL"; fi; fi; 

Но, к сожалению, не печатает «COOL».

ответ

5

bash не понимает \d. Скажем [0-9].

[[ $path =~ ^.*-[0-9]{10}\.csv$ ]] 

Кроме того, избежать ., чтобы соответствовать буквальное ..

+0

Удивительный, он работает! большое спасибо – Vor

Смежные вопросы