Полномочия группы установлены в то время, когда оболочка создается. Самая первая оболочка, где groups
вывод только показывает user.x
, та оболочка была создана прежде, чем добавить другие группы? Раз так просто выйдите из системы и войдите в систему снова.
Посмотрите на документы Расширения Параметра удара. Удаление расширения довольно распространено, можно сделать это с:
...
file=$1
cpiofile=${file%.*}
...
gunzip $file
cpio -id < $cpiofile
...
(Замена позиционных параметров с надлежащими именами переменной сделает Ваш сценарий легче считать и поддержать, особенно если в какой-то момент Вы захотите добавить или изменить порядок параметров.)
Я бы поменял следующие строки
gunzip $1
cpio -id < $1
на
gzip -dc $1|cpio -id
и
mv $1 ...
на
mv ${1}.gz .../$1