É assim que funciona a opção -r
recursiva em 7z
, é uma pesquisa de padrões recursivos.
7z a -r "$backupfilename" \*.ini \*.cfg \*.txt
7z
cria arquivos zip bem.
Você também pode fazer a opção multi-arg em find
se de alguma forma você não tiver 7zip,
find suan \( -name \*.cfg -o -name \*.txt -o -name \*.ini \) \
-exec zip -r "$backupfilename" {} +