script para compactar um arquivo e alterar sua propriedade

script para compactar um arquivo e alterar sua propriedade

Estou trabalhando em um script que lê um arquivo de texto e usará as informações armazenadas no arquivo de texto para colocar cada linha inserida como uma matriz. Essa matriz é uma referência aos arquivos que são importados para um diretório em outro script. O problema é que criei uma função para compactar o conteúdo do diretório e alterar suas propriedades, mas quando executo o script, ele estava compactando e tentando alterar as propriedades do arquivo pwd. Aqui está meu código abaixo:

file=~/exporttool/zipFiles.txt
index=0
declare -a studyinstanceuids
while read line ; do
        studyinstanceuids[$index]="$line"
        index=$((index+1))
        echo $line
done < $file
for i in "${studyinstanceuids[@]}"
do
echo "$i" | ./cmd2;
done
echo "Exams are in!";

##Function with argument that will take prompt to change ownerships
echo "What is the name of the owner: "
read $owner

zipForOwner(){
        arg1=$1
        for i in "${studyinstanceuids[@]}"; do
                zip -r ~/export/"${studyinstanceuids[@]}"/20140620_"${studyinstanceuids[@]}".zip .
                sudo chown $1:$1 ~/export/"${studyinstanceuids[@]}"/"${studyinstanceuids[@]}".zip
                sudo mv ~/export/"${studyinstanceuids[@]}"/"${studyinstanceuids[@]}".zip ~/home/"$1"
        done
}

zipForOwner $owner
exit;

Alguém tem alguma sugestão?

Responder1

Encontrei o problema. O problema está com ozip -r ~/export/"${studyinstanceuids[@]}"/20140620_"${studyinstanceuids[@]}".zip .

Eu preciso mudar isso parazip -r ~/export/"${studyinstanceuids[@]}"/20140620_"${studyinstanceuids[@]}".zip ~/export/"${studyinstanceuids[@}"/

O .final estava causando o problema.

informação relacionada