This question already has an answer here:
I'm having a hard time getting regex matches to work in a bash case statement.
#!/bin/bash str=' word1 word2' echo "With grep:" echo "$str" |grep '^\s*\<word1\>' echo "With case:" case "$str" in '^\s*\<word1\>') echo "$str" ;; esac
The example works with grep, but not with case... I'm confused, because some simpler regexes work with case. Does case use a different syntax for regex? Am I just not escaping things properly?