Então, se eu entendi corretamente, você está tentando arquivar os arquivos & amp; pastas em uma pasta específica, mas sem incluir a pasta raiz.
Exemplo:
/test/test.txt
/test/test2.txt
onde test.txt e test2.txt seriam armazenados no zip, mas não / test /
Você pode acessar o diretório / test / e executar algo como
zip -r filename.zip ./*
O que criaria um arquivo na mesma pasta nomeada filename.zip. Ou se executá-lo fora da pasta, você pode executar,
zip -r test.zip test/*
O / * é a parte que inclui apenas o conteúdo da pasta, em vez da pasta inteira.
Edit: OP queria vários zips, a solução acabou sendo um pouco hack, estou curioso para saber se existe uma maneira melhor de fazer isso.
for d in */ ; do base=$(basename "$d") ; cd $base ; zip -r $base * ; mv "${base}.zip" .. ; cd .. ; done;