Se pattern1 e pattern2 forem padrões de curingas de shell, você poderá usar um padrão or.
tar -cjpvf a.tar @($pattern1|$pattern2)
Isso requer ksh, bash ou zsh. No bash, você precisa executar shopt -s extglob primeiro para ativar a sintaxe do padrão @(…) . Em zsh, você precisa executar setopt ksh_glob first (e também dizer ao zsh que as variáveis contêm padrões em vez de strings, portanto @($~pattern1|$~pattern2) ) ou usar a sintaxe nativa ($~pattern1|$~pattern2) .